私はCの基本を取り上げていましたが、以下の問題を解決しようとしていたのですが、なぜ変数c
の出力が異なるのか説明できますか?出力でcがインクリメントされないのはなぜですか?
次のプログラムの出力はどのようなものですか?
int main()
{
int a = -3, b = 2, c= 0, d;
d = ++a && ++b || ++c;
printf ("a = %d, b = %d, c = %d, d = %d", a, b, c, d);
}
回答:-2、3、0、1
c
は出力にインクリメントされないのはなぜ?
D =((-2 && 3)||(C++))。それはcになる前に短絡しています。 –
実際に何をしようとしていますか?それとも単にコードで遊んでいるだけですか? – Bart
単純にCのパズルを解く – Nisha