首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

int i=~12?解决方法

2013-01-17 
int i~12?int i~12个人认为应该是一个负的相当大的数,但程序运行结果为-13,求指教![解决办法]12的二进

int i=~12?
int i=~12;

个人认为应该是一个负的相当大的数,但程序运行结果为-13,求指教!
[解决办法]
12的二进制是
0000 0000 0000 0000 0000 0000 0000 1100(原码补码相同)
~12的二进制是
1111 1111 1111 1111 1111 1111 1111 0011(原码)
转换为补码之后就是
1000 0000 0000 0000 0000 0000 0000 1101
即-13 
[解决办法]
只要知道计算机是用补码的方式存储的。

热点排行