4

if無視されるだけの場合、ステートメントの最初の引数の意味は何ですか? たとえば、次のようになります。

#include<stdio.h>
main()
{
  if(1,0)
    printf("abc");
  else
    printf("qwe");
}
4

1 に答える 1

9

これは引数リストではなく、コンマ演算子です。

のようなステートメントがある場合foo(), bar()foo()が呼び出され、その結果が破棄されます。次にbar()が呼び出され、ステートメント全体の結果が の結果になりますbar()if(foo(),bar())何らかの理由で呼び出すfoo()必要がある副作用がある場合は、次のようなものを使用できます。

のようなものについて1,0は、それは単に言っているのとまったく同じで0あり、意味はありません1

于 2013-06-24T12:49:06.857 に答える