C语言中合法的常量是 A. 'program' B. -e8 C. 03x D. 0xfL 为什么?

如题所述

选D。
A项 单引号 扩住的只能是 单个字符,不能是字符串
B项 出现了 e 说明是十六进制,既然是十六进制必须以 0x 开头。
C项 以 0 开头 说明是 8 进制,但是末尾 的 x 是非法的。
D项 以 0x 开头,说明是 16进制,所以 f 代表 15,合法。末尾的 L 是 long 的意思,表示这个常量是长整型。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-02-26
答案D没错 但是一楼的对B选项解释的不对!!!
并不是说有e就必须是十六进制
这里错误的原因是e前面没有数字!
给你举个例子 1e8 这就是合法的常量
但是并不是十六进制 他表示十进制的100000000
第2个回答  2011-02-26
应该是A,我感觉吧,这些都是计算机能识别的,第一是B、C、D中首字母都是C语言系统中自带的常量。第二是数字是任何计算机都是默认的。我是我猜的啊,对不对,你再问问其他人吧,呵呵