00问答网
所有问题
关于C语言中unsigned的问题
unsigned short x=0;
x--;
printf("%d",s);
为什么老是说在32位系统下会输出65535;
在16位系统下输出-1.
老师说。。不是老是说
举报该问题
推荐答案 2015-01-26
因为short类型是占2个字节
如果在32位系统下,用%d也就是整形的方式输出 两个字节的-1.那么其实输出的是
0x 00 00 FF FF
也就是65535了
如果在16位下,整形也是16位,那么输出的就是:0x FF FF所以就是-1了。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://00.wendadaohang.com/zd/enZeIneeeTnrTIBjeZ.html
相似回答
关于C语言中unsigned
变量
的问题
?
答:
C语言中
定义无符号整型变量如下:
unsigned
int num;定义有符号整型变量如下:signed int num;或者 省略signed:int num;C语言如果不注明是否有符号默认是signed;整型常量默认也是有符号int。举例说明:比如有定义:unsigned int num = 100;100是整型常量,因为没有标识编译器默认为有符号int处理。这语句...
c语言unsigned
是什么意思
答:
unsigned是
C语言中
的一个关键字,表示无符号数。在C语言中,一个整数可以用有符号或
无符号的
方式存储,
对于
有符号整数,最高位用于表示符号,因此能够表示的最大正整数值比无符号整数少一半。而无符号整数不需要用一个位来表示符号,因此其能够表示的最大值是有符号整数的两倍。使用unsigned修饰变量时,...
C语言
unsigned
问题
答:
void main(){ int i = -20; //转换为无符号数的时候为 65516,即-20的补码为65516 //
unsigned 的
优先级高于int,所以 i + j 求值的时候先将i 转换为 无符号数 unsigned j = 10;printf("%u",i + j); //运行结果 65526 } include <stdio.h> void main(){ unsigned i ;for (...
c语言中unsignedc
har
C语言的unsigned
int到底是什么意思
答:
1、
C语言中unsigned
int是无符号整数的意思。2、无符号整型(unsigned int):(1)我们都知道整型是4个字节(有些编译器不同,可能会是2个),即32位,无符号整型当然也为32位。3、(2)既然是32位,无符号整型的取值是32个0~32个1,即:0~4294967295(3)我们举个例子:32位有...
大家正在搜
关于c语言提问的问题
关于C语言的问题
c语言unsigned赋值int
C语言unsigned
C语言unsigned什么意思
C语言unsigned用什么输出
c语言unsigned怎么用
unsigned在c语言有什么用
c语言unsigned char