当前位置:首页 > 内存 > 正文

整型数据占内存

  • 内存
  • 2024-06-12 07:49:43
  • 3609

一、整型的存储占多少字节的内存?

​1.整型变量可以分为以下4类:
​(1)短整型,类型关键字是short[int]。
(2)整数的基本类型,type关键字为int。
(3)长整型,类型关键字为long[int]。
(4)无符号整数类型,关键字类型为unsigned[int]或unsignedShort或unsignedlong。
unsigned[int]表示无符号基整型;
unsignedshort表示无符号短整型;
unsignedlong表示无符号长整型。
无符号整数类型只能用于存储无符号整数。

2.占用内存字节数及取值范围
以上类型整型变量占用内存字节数一般根据存储int类型数据的系统和取值范围的不同而不同。long类型的数据字节数不得小于int类型,short类型的数据字节数不得长于int类型。

在16位操作系统(如DOS)上,一般用2个字节来存储一个int类型的数据;在32位操作系统(如Win-dows98)上,默认为4个字节。词节。



二、int占用32位内存,为什么不是0~31位表示数值,而是0~30位表示数值?int类型用32位二进制表示(实际上是一个长整数),最高位是符号位,0表示正数或0,1表示负数,其余30位表示数值​​(负数用补码表示)。


三、在C语言中各种数据类型各占多少位(1)32位平台:
分为有符号和无符号。
类型位置:
Short在内存中占用2个字节,范围是-2^15~(2^15-1)
Int在内存中占用4个字节,范围是-2^31~(2^31-1)
长度在内存中占用四个字节,范围为-2^31~2^31-1
无符号类型:最高位,符号位不表示
占用unsignedshort在内存中占用2个字节,范围是0~2^16-1
unsignedint在内存中占用4个字节,范围是0~2^32-1
unsignedlong在内存中占用4个字节,取值范围为0~2^32-1
实数类型变量:
有单精度浮点型和双精度浮点型两种形式:
浮点型:占用4个字节,提供7~8位有效位数字。
Double:占用8个字节,提供15~16位有效数字。
(2)16位基本系统:
1)整型(基本类型):类型说明符为int,占用内存2个字节。
2)短整数类型:类型分隔符short或short。占用字节数和取值范围与整型(基类型)相同。
3)长整型:long或long类型说明符,占用内存4个字节。
无符号类型:指定的类型是无符号的。
将以上三种类型匹配即可形成无符号类型:
不同无符号类型所占用的内存空间字节数与对应的有符号类型相同。但由于省略了符号位,因此无法表示负数。
实型变量:
分为单精度(float型)、双精度(double型)和longdoubleprecision(longdouble型)三类。
单精度类型占用4字节(32位)内存空间,取值范围为3.4E-38~3.4E+38,只能提供7位有效数字。
双精度类型占用8字节(64位)内存空间,取值范围为1.7E-308~1.7E+308,可保存16位有效数字。
16字节(128位)双精度长内存空间可保存18-19个有效数字。