1)第一个字符必须是字母(不分大小写)或下划线(_);
2)后跟字母(不分大小写)、下划线(_)或数字组成;
3)标识符中的大小写字母有区别。如,变量Sum,sUm,suM代表三个不同的变量;
4)不能与c编译系统已经预定义的、具有特殊用途的保留标识符(即关键字)同名。比如,不能将标识符命名为float,auto,break,case,this,try,for,while,int,char,short, unsigned,等等
所以选(A)
自定义标识符必须满足下面的条件
1.下划线,字母或者数字
2.不能以数字开头
3.不能和系统的保留关键字相同
A正确
B不满足第2条
C不满足第3条
D不满足第1条
这个没必要刻意去记。
BCD选项都会引起歧义
B:2a_ 容易判断为2*a_
C:do 会和命令do {}while();中的do搞混淆
D:a.12中的小数点会和结构体指针中的小数点如 p.a这个小数点搞混
所以答案是A
d中的数字不能出现在第一位,不好意思,刚才看错了,还以为Why!?也是里面的呢!