このプログラムは、C
実装に対して簡単な質問に答える ように求めています。
表現可能な最大の整数INT_MAX < 0を確認して出力します。
printf ("%d\n", (INT_MAX) < 0);
したがって、出力が表示されます0
。condition がfalseになり、関係演算子が returnになるため0
です。
しかし、表現可能な最大の整数に加えて条件をチェックすると、次のプログラムを参照してください。 1
#include <limits.h>
#include <stdio.h>
int main (void)
{
printf ("%d\n", (INT_MAX+1) < 0);
return 0;
}
と表示された出力 1
。
条件がfalseにならないのはなぜですか?
また、表現可能な最大の整数に 1 を加えると、結果は負になりますか?