c, -028 以0开始的是 八进制数制, 八进制数最大数字为7,这里错用了8。
如果是 -027 就合法了。
其它几个都是正确的常量 。
float a,b,c,d
a= 2.E8
b= -.28
c= -027 //假如用 -027就对了
d= 2e-8
printf("%g %g %g %g\n",a,b,c,d)
输出: 2e+008 -0.28 -23 2e-008
C语言中不能用来表示整常数的进制是二进制 二进制是不行的 在C语言中,就是这么规定的,没有什么太深究的原因 整型常量又称整型数,它有三种不同的表示形式:十进制,八进制,十六进制 十进制直接用整数表示 八进制可以在常熟前加0(零)例如027 十六进制在常数前加0x(零 乘号) 例如 0x27