だから私は次のプログラムを持っています:
# define swap(a,b) temp=a; a=b; b=temp;
int main() {
int i, j, temp;
i = 5;
j = 10;
temp = 0;
if (i > j)
swap(i, j);
printf("%d %d %d", i, j, temp);
}
これにより、次の結果が得られます。
10, 0, 0
私が理解できないのはif (5 > 10)
、5 が 10 より大きくないのに、条件が「真」として実行された理由です。