整形常量就是整常数,在c语言中,使用的整常数有八进制,十进制和十六进制三种
1)十进制常数:十进制常数没有前缀,其数码为0~9
以下各数是合法的十进制整常数:
237-568655351627
以下各数不是合法的十进制整
023 (不能有前导0)23D (含有非十进
在程序中是根据前缀来区分各种进制数的。因此在书写常数时不要把前缀弄错造成
结果不正确。
2)八进制整常数:八进制整常数必须以0开头,既以0作为八进制的数的前缀,数码取
值为07。八进制数通常是无符号数。 以下各数是合法的八进制数:
015(十进制为13)0101(十进制为65) 0177777(十进制为65535)
以下各数不是合法的八进制数:
256(无前缀0)03A2(包含了非八进制数码),-0127(出现了负号)。
3)十六进制整常数:十六进制整常数的前缀为0X0x。其数码取值为0~9A~F
a~f 以下各数是合法的十六进制整常数;
0X2A(十进制为42)0XA0 (十进制为1600xFFFF(十进制为65535)
以下各数不是合法的十六进制整常数:
5A (无前缀0X)0X3H (含有非十六进制数码)。
4)整型常数的后缀:在16位字长的机器上,基本整型的长度也为16位,因此表示的
数的范围也是有限定的。十进制无符号整常数的范围为065535,有符号数为-32768+32767。八进制无符号数的表示范围为00177777。十六进制无符号数的表示范围为0X00XFFFF0x00xFFFF。如果使用的数超过了上述范围,就必须用长整型数来表示。长整型数是用后缀“L”“l”来表示的。
例如:
十进制长整常数
158L (十进制为158358000L(十进制为358000);
八制长整常数:
012L (十进制为10077L整型常量合法要求(十进制为63),0200000L (十进制为63336)
十六进制长整常数:
0X15L (十进制为21),0xA5L(十进制为165),0x10000L(十进制为65536)。
长整数158L和基本整常数158 在数值上并无区别。但对158L,因为是长整型量,
c编译系统将为它分配4个字节存储空间。而对158,因为是基本整型,只分配2 个字节的存储空间。因此在运算和输出格式上要予以注意,避免出错。 无符号数也可用后缀表示,整型常数的无符号数的后缀为“U”
例如:
358u0x38Au235Lu均为无符号数
前缀,后缀可同时使用以表示各种类型的数,如0xA5Lu表示16进制无符号长整数A5,其十进制为165

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。