一、整型数据在内存中的存储
1.1整型数据家族
char,short,int long(每种类型又分为unsigned 和signed,例如,signed char,unsigned char)
1.2整型数据的存储
对于整型数据,其在计算机内存当中,存储的是整型数据的补码
但是对于不同类型的电脑,其补码的存储方式也是不同的,按照存储方式的不同,可以分为大端存储模式和小端存储模式
大端存储模式是指数据的低位存储在内存中的高地址中,而数据的高位存储在内存中的低地址中
而小端存储模式是指数据的低位存储在内存中的低地址中,而数据的高位存储在内存中的高地址中
对于某个数据,例如int a=0x00000001,这是1的补码,0x表示它是16进制,在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,也就是8个比特位,a是4个字节的数据,每个字节的数据都会存放在一个地址单元中,对于a,从右到左,字节依次提高,例如0x01是它的低字节,0x00是高字节,所以对于大端模式来说,a在内存中的存储形式是:00 00 00 01
二、整型数据的存储范围
对于unsigned类型的数据,其存储范围是0 ~ ( 2^n - 1 ),而signed类型的数据,其存储范围是- (2^(n-1)) ~ + (2^(n-1) - 1),
例如unsignd char 类型数据的存储范围为0~255,signed char类型数据的存储范围为-128~127
三、例题分析
四、查询整型家族存储数据范围
储存在一个叫 limits.h 的文件当中,可以用一个叫做Everything的软件直接搜索limits.h,将其中一个拖动到我们的vs项目中去,在这里我们可以找到我们需要的存储范围