C语言~12 按位取反的结果 是什么?
C语言~12 按位取反的结果 是什么?
日期:2017-11-26 01:37:06 人气:1
首先要弄懂在内存中的二进制存放形式。这short 型为例 12的二进制为0000 1100取反便成了。1111 0011而这个数表示-13这一句你肯定看不懂。你得先去看负数的补码。在电脑内存中,数值型据是以补码的形式存在的。正数的补码不变。负数的补码是反码再+1。//验证程序//VS2005#include
using namespace std;void main()
{
int n=12;
printf("%d",~n);
}