金泰妍11.11专辑图片:c语言 会c的来哈6

来源:百度文库 编辑:高校问答 时间:2024/04/27 21:23:18
main()
{ unsigned int a;
int b=-1;
a=b;
printf("%u",a);
}
程序运行后的输出结果是
说的越详细越好

答案应是65535
一个整数在内存中占2个字节16位,一般的int最高位1表示负数,0表示正数
整数在内存中一般是以补码形式存放。-1的补码是1111111111111111
补码详见:
http://befresh.blogbus.com/logs/2004/06/242545.html
而a是无符号数,最高位表示数值
故111111111111111的值是2的16次方-1即65535

-1