int型为有符号32位整数,占4个字节,取值范围在-2,147,483,648~2,147,483,647之间。
注意:int占多少个字节是由编译器决定的,ANSI标准定义int是占2个字节.。
uint型为无符号32位整数,占4个字节,取值范围在0~4,294,967,295之间。
BOOL型为int型,一般认为占4个字节,取值TRUE/FALSE/ERROR。
sbyte型为有符号8位整数,占1个字节,取值范围在128~127之间。
bytet型为无符号16位整数,占2个字节,取值范围在0~255之间。
short型为有符号16位整数,占2个字节,取值范围在-32,768~32,767之间。
ushort型为无符号16位整数,占2个字节,取值范围在0~65,535之间。
long型为64位有符号整数,占8个字节,取值范围在9,223,372,036,854,775,808~9,223,372,036,854,775,807之间。
ulong型为64位无符号整数,占8个字节,取值范围在0~18,446,744,073,709,551,615之间。
float型为32位单精度实数,占4个字节,取值范围3.4E+10的负38次方~3.4E+10的38次方之间。
double型为64位实数,占8个字节,取值范围1.7E+10的负308次方~1.7E+10的正308次方。
int型数据占几个字节的存储空间
在C语言中,一个int类型的变量通常占用4个字节(32位)的内存空间。这个值可能会因不同的操作系统、编译器或硬件平台而有所不同。
不同的编译器,占据的字节也不同,具体如下表所示:
编译器可以根据自身硬件来选择合适的大小,但是需要满足约束:short和int型至少为16位,long型至少为32位,并且short型长度不能超过int型,而int型不能超过long型。
这即是说各个类型的变量长度是由编译器来决定的,而当前主流的编译器中一般是32位机器和64位机器中int型都是4个字节。
整数(int类型的常量)有几种书写形式,程序中的整数一般采用十进制写法。
用十进制方式写出的一个整数就是普通数字字符组成的一个连续序列,其中不能有空格、换行或其他字符。
C语言规定十进制表示的数字不能是0,除非要写的整数本身就是0。
下面是一些整数的列子。
1233042327810906。
由于长整数是另外一个不同类型的整数,所以C语言为长整数规定了一种专门写法,其特殊之处是在表示数值的数字序列最后附一个字母“L”或“l”作后缀。
由于小写字母“l”容易与数字“1”混淆,建议读者采用大写的“L”,下面是一些长整数的例子。
123L304L25278L1l0L906L。
依据程序编译器的不同,int定义的字节数不同。(数据占用内存储器的大小不同)。
常用的单片机编译器,如KEIL下,51类单片机的C语言中,int代表2个字节(16位);如果是32位RAM处理器的C语言中,则int代表4个字节(32位)。
PIC单片机的PICC中8位系列单片机的C语言里int表示16位。
而不少PC端软件的编译器则会根据操作系统或处理器(如64位XP)把int定义为8字节(64位)。
所以在多平台上编程的人员需要在使用时注意。
如需定义16位数,可使用short(短、短整数类型)定义。
还没有评论,来说两句吧...