判断C语言数值常量是否合法?为什么不合法?

A. 12. 0Xa23 4.5e0

B. -0xf .5e-3 .177
C. 0abc 3.e5 0x8A 10,000

 12. 0Xa23 4.5e0,-0xf .5e-3 .177合法。

实数型常量:必须有小数点,例如定义double a=1就是错误的,必须写成double a=1.0,另外写成a=1,0中间是逗号,就更是错误的了。

e与E表示以10为底数的幂数,且e与E后面必须跟整数,若是小数也是错误的,例如3.2e1.5  ,这里1.5是小数,所以错的。

扩展资料:

注意事项:

const只修饰其后的变量,至于const放在类型前还是类型后并没有别。如const int a和int const a都是修饰a为const。注意*不是一种类型,如果*pType之前是某类型,那么pType是指向该类型的指针一个简单的判断方法,指针运算符*,是从右到左。

C语言编译主要分为编译和链接两部分,之所以const修饰的变量变为只读是因为在变量前加了const修饰,如果程序试图去修改此变量的值,那么编译器在编译阶段检查语法错误的时候将报错,这很好理解,这就是C语言规定的语法,违反了将提示相应的错误。

参考资料来源:百度百科-常量

参考资料来源:百度百科-C数值算法

参考资料来源:百度百科-c语言

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-27
A、B项都是合法的。C项中0abc和10,000不合法:因为以0打头的数字是八进制,而八进制不会有abc等符号;10,000中的逗号是C不允许的。本回答被提问者和网友采纳
第2个回答  2015-02-07
a第二个,不正确
c低四个不正确
相似回答