C言語なら俺に聞け(入門篇) ぱぁと2〜
■ このスレッドは過去ログ倉庫に格納されています
0673デフォルトの名無しさん
2006/09/26(火) 18:47:18int main(void)
{
int a,b=2;
a=b++;
printf("a=%d\nb=%d\n",a,b);
return 0;
}
実行結果
a=2
b=3
このソースなのですがエラーとかは出ませんが、
=と++の演算子の優先順位に疑問があります。
参考書には++の方が=よりも優先順位が高いとなっているのですが、
そうするとこの場合まずb++を処理してその値をaに代入することになり、
a=3
b=3
になると思うのですが結果は違いますよね?
この場合はどのように考えればいいのでしょうか?
詳しい方お教え下さい。よろしくお願いいたします。
}
■ このスレッドは過去ログ倉庫に格納されています