私はCを初めて使用しますが、これは初心者向けの質問です。
私はsignedint表現に関するこのコードに出くわしました:
int main(void) {
int a = 0x8fffffff;
printf("%d\n",a);
return 0;
}
そしてそれは戻ります-1879048193
。
signed intについての私の現在の理解は、左端のビットが負または正の表示に使用されているということです。
その左側のビットは:であるため、0x9
符号付き10進数に評価する必要があります。-1
1
int main(void) {
int a = 0x9;
printf("%d\n",a);
return 0;
}
しかし、それは私に小数点以下9を与えます、私が期待したものではありません、何か考えはありますか?