真心C语言 发表于 2013-11-28 10:59:48

基础问题

int a=-2;
printf("%x,%o",a,a);
输出结果为:fffffffe,37777777776(怎么那么多啊)


我的理解:把十进制数-2变成无符号十六进制后为 2

所以输出结果为 2,2
应该是这样啊{:5_94:}

liufei_vip 发表于 2013-11-28 13:00:51

你看一下负数在内存中的表示方法。。。
PS:补码。。。
页: [1]
查看完整版本: 基础问题