什么是整型数

是整数吗?
2024-12-23 16:27:02
推荐回答(2个)
回答1:

整型(INTEGER)数据是不包含小数部分的数值型数据,用字母I表示。整型数据只用来表示整数,以二进制形式存储。分类:

1、char:字符型数据,属于整型数据的一种,占用一个字节。

2、unsigned char:无符号字符型数据,属于整型数据的一种,占用一个字节。

3、short:短整型数据,属于整型数据的一种,占用两个字节。

4、unsigned short:无符号短整型数据,属于整形数据的一种,占用两个字节。

5、int:整型数据,属于整型数据的一种,占用四个字节。

6、unsigned int:无符号整型数据,属于整型数据的一种,占用四个字节。

7、long:长整型数据,属于整型数据的一种,占用四个字节。

8、unsigned long:无符号长整型数据,属于整形数据的一种,占用四个字节。

扩展资料:

整型数据分类:

基本型:类型说明符为int,在内存中占4个字节(不同系统可能有差异,此处原为2,经查证windows系统下为4,VAX系统也如此) ,其取值为基本整常数。

短整型:类型说明符为short int或short'C110F1。所占字节和取值范围会因不同的编译系统而有差异。对于16字机,short int 占2个字节,在大多数的32位机中,short int 占4个字节。但总的来说,short int 至少16位,也就是2个字节。

长整型:类型说明符为long int或long ,在内存中占4个字节,其取值为长整常数。在任何的编译系统中,长整型都是占4个字节。在一般情况下,其所占的字节数和取值范围与基本型相同。

无符号型:类型说明符为unsigned。在编译系统中,系统会区分有符号数和无符号数,区分的根据是如何解释字节中的最高位,如果最高位被解释为数据位,则整型数据则表示为无符号数。

参考资料来源:百度百科——整型数据

回答2:

整型常量就是整常数。在C语言中,使用的整常数有八进制、十六进制和十进制三种。

1) 十进制整常数:十进制整常数没有前缀。其数码为0~9。

以下各数是合法的十进制整常数:

237、-568、65535、1627;

以下各数不是合法的十进制整常数:

023 (不能有前导0)、23D (含有非十进制数码)。

在程序中是根据前缀来区分各种进制数的。因此在书写常数时不要把前缀弄错造成结果不正确。

2) 八进制整常数:八进制整常数必须以0开头,即以0作为八进制数的前缀。数码取值为0~7。八进制数通常是无符号数。

以下各数是合法的八进制数:

015(十进制为13)、0101(十进制为65)、0177777(十进制为65535);

以下各数不是合法的八进制数:

256(无前缀0)、03A2(包含了非八进制数码)、-0127(出现了负号)。

3) 十六进制整常数:十六进制整常数的前缀为0X或0x。其数码取值为0~9,A~F或a~f。

以下各数是合法的十六进制整常数:

0X2A(十进制为42)、0XA0 (十进制为160)、0XFFFF (十进制为65535);

以下各数不是合法的十六进制整常数:

5A (无前缀0X)、0X3H (含有非十六进制数码)。

4) 整型常数的后缀:在16位字长的机器上,基本整型的长度也为16位,因此表示的数的范围也是有限定的。十进制无符号整常数的范围为0~65535,有符号数为-32768~+32767。八进制无符号数的表示范围为0~0177777。十六进制无符号数的表示范围为0X0~0XFFFF或0x0~0xFFFF。如果使用的数超过了上述范围,就必须用长整型数来表示。长整型数是用后缀“L”或“l”来表示的。

例如:

十进制长整常数:

158L (十进制为158)、358000L (十进制为358000);

八进制长整常数:

012L (十进制为10)、077L (十进制为63)、0200000L (十进制为65536);

十六进制长整常数:

0X15L (十进制为21)、0XA5L (十进制为165)、0X10000L (十进制为65536)。

长整数158L和基本整常数158 在数值上并无区别。但对158L,因为是长整型量,C编译系统将为它分配4个字节存储空间。而对158,因为是基本整型,只分配2 个字节的存储空间。因此在运算和输出格式上要予以注意,避免出错。

无符号数也可用后缀表示,整型常数的无符号数的后缀为“U”或“u”。

例如:

358u,0x38Au,235Lu均为无符号数。

前缀,后缀可同时使用以表示各种类型的数。如0XA5Lu表示十六进制无符号长整数A5,其十进制为165。