整型常量和实型常量的区别
1.数据类型不同:整型常量的默认数据类型是int类型,即有符号整型。浮点数常量的默认类型是double类型,即双精度类型。
2.存储方式不同:整型数据在计算机中用补码存储,实型数据采用IEEE754标准存储
3.表现形式不同:
整型常量
在C语言中,整型常量分为十进制整型常量、八进制整型常量和十六进制整型常量三种表示形式。
(1)十进制整型常量
这种常量只能出现0~9的数字,且可带正、负号。例如:
0136428-34
(2)八进制整型常量
这种常量是以数字0开头的八进制数字串。其中数字为0~7。例如:
0111(十进制73)011(十进制9)0123(十进制83)
(3)十六进制整型常量
这种常量是以0x或0X开头的十六进制数字串。其中每个数字可以是0~9、a~f或A~F中的数字或英文字母。例如:
0x11(十进制17)0Xa5(十进制165)0x5a(十进制90)
一般情况下编译程序会根据常量的数值分辨出常量是int还是longint类型。但是有些场合需要明确地指出它是否属于longint类型。此时可以在整型常量后附加一个字母l或L强制它为longint类型。例如;
4126l;
78l;
5L等。
实型常量
实型常量有两种表示形式:一种是十进制小数形式,另一种是指数形式。
(1)十进制小数形式
十进制小数形式为包含一个小数点的十进制数字串。
此类实型常量小数点前或后可以没有数字,但不能同时没有数字。例如:
3.14159,.89;
56.0;
78.,-3.0,0.0
(2)指数形式
指数形式的格式由两部分组成:十进制小数形式或十进制整型常量部分和指数部分。
其中指数部分是在e或E(相当于数学中幂底数10)后跟整数阶码(即可带符号的整数指数)。例如:
1e15???????????//表示数值1×10^15
0.35e+1?????//表示数值0.35×10^1
78e-1????????//表示数值78×10^-1