int型为有符号的整形,对于有符号数,计算机中表达时,最高位约定为符号位,当符号位为0时为正数,符号位为1时为负数。
以16位cpu为例,正数上限为:二进制数0111111111111111转换为十进制为32767,负数上限为:二进制数1000000000000000转换为十进制为-32768。
以32位cpu为例,正数上限为:二进制数0111 1111 1111 1111 1111 1111 1111 1111转换为十进制为2147483647,负数上限为:二进制数1000 0000 0000 0000 0000 0000 0000 0000转换为十进制为-2147483648。
问题:
1.为何负数上限不是二进制数1111 1111 1111 1111 1111 1111 1111 1111转换为十进制数为-4294967295呢?
2.那么什么是无符号整型数?
请问怎么写无符号整型?
追答无符号整型 unsigned int
unsigned long
%u