这是一个关于C语言的问题,赋值问题,如果unsigned int 是65535,那么int是多少

如题所述

是-1
因为65535对应的二进制数是1111111111111111, 而这正是有符号数-1 的补码, 所以是-1
BTW: 一个负数的补码, 是它对应的正数的补码按位取反并在末位加1.
求-1的补码, 先看正1的补码
正1的二进制数是0000000000000001, 它的补码是
1111111111111110, 然后末位加1, 就变成了1111111111111111, 就是-1的补码.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2007-03-18
unsigned int 是无符号整数

int 是有符号整数

但有些编译器int也等于unsigned int

你可以用65535赋值于int变量实验下就清楚
第2个回答  2007-03-18
-32768 - +32767
相似回答