C语言之数据类型①——整数类型
C语言的变量类型:
1.整数类型的宽度
- char——8BIT,1字节,0~0xFF
- short——16BIT,2字节,0~0xFFFF
- int——32BIT,4字节,0~0xFFFFFFFF
- long——32BIT,4字节,0~0xFFFFFFFF
如:
char x=1; 存储的值是:0000 0001
char y=-1; 存储的值是:1111 1111
注意:int在16计算机中与short宽度一样,在32以上的计算机中与long一样
2.存储格式:
3.数据溢出
数据溢出,是把高位舍弃还是低位舍弃?
实验:
C代码:
运行转反汇编:
因此:是舍弃高位
4.有符号数(signed)与无符号数(unsigned)
如定义一个有符号数:
signed char x=1;
x的宽度为: 0000 0000 ,由于最高位是符号位,所以当存储正数时x存储范围是0-127;当存储的值是负数时,存储的范围就是-128--1
反之如果是unsigned char;正数存储的是0-255;且没有负数的情况
对于计算机来说,有符号数与无符号数存储时是没有什么区别的,如int x=-1;存储到内存就是0xFFFFFFFF,而有无符号的区别主要体现在使用者。
相关推荐
lynjay 2020-06-14
AaronPlay 2020-06-13
chensen 2020-11-14
拉斯厄尔高福 2020-11-04
杜倩 2020-10-29
拉斯厄尔高福 2020-10-19
嵌入式资讯精选 2020-10-15
zhaochen00 2020-10-13
penkgao 2020-10-13
yiyilanmei 2020-10-05
wanshiyingg 2020-09-29
Mars的自语 2020-09-27
shenwenjie 2020-09-24
一个逗逗 2020-09-22
flycony 2020-09-13
zhaochen00 2020-08-20
Biao 2020-08-20
qingsongzdq 2020-08-19
penkgao 2020-08-17