int main()
{
int a = 0;
int b = ~a;
printf("%d\n",b);
//输出的b=-1
//a=00000000000000000000000000000000;
//b=11111111111111111111111111111111;因为符号位为1,所以b在内存中是补码。
负数在内存中存储的话是以二进制的补码存储的,而打印的是原码所以需要转换。
//b反码=11111111111111111111111111111110;
//b原码=10000000000000000000000000000001;
}