C语言按位取反运算符~
在二进制码中,为了区分正负数,采用最高位是符号位的方法来区分,正数的符号位为0、负数的符号位为1
>>位右移运算,最高为补0
int wordlength()
{
//获得计算机中int类型的整数字长
int i;
int b =-1;
unsigned v=b;
for(i=1;(v=v>>1)>0;i++);
return i;
}
int main()
{
unsigned a = (unsigned)~0;
printf("%u\n",a);
int b = -1;
unsigned c = b;
cout<<c<<endl;
int d = wordlength();
cout<<d<<endl;
cout << sizeof(int)*8<<endl;
return 0;
}