C/C++每日一问--标识符

1、今日主题

下面哪项是合法的自定义标识符?( )

A、3aa

B、float

C、_88

D、-much

正确答案:C
解析:A:以数字开头;B:关键字:D:有“-”;全部错误

2、知识裂变

一、什么叫标识符?

用来标识变量、符号常量、函数、数组、类型等实体名字的有效字符序列称为标识符。

标识符分为三类:关键字,预定义标识符,用户自定义标识符 。

二、标识符构成规则:

1、以大写字符、小写字母或下划线(_)开始

2、可以由大写字母小写字母或下划线(_)或数字0~9组成

3、大写字母小写字母代表不同的标识符

4、 不能是C++关键字或操作符

三、命名注意事项:

变量名也是表示符的一种,命名必须遵循标识符的命名规则。

在我们定义变量名、函数名、数组名等等标识符时,我们应该注意哪些问题,通常用什么方法或准则去进行定义?

一般规则:

1、命名应当直观且可以拼读,可望文知意,便于记忆和阅读。
标识符最好采用英文单词或其组合,不允许使用拼音。程序中的英文单词一般不要太复杂,用词应当准确 。

2、命名的长度应当符合“min-length && max-information”原则
命名要简洁的,如变量名MaxVal就比MaxValueUntilOverflow好用。标识符的长度一般不要过长,较长的单词可通过去掉“元音”形成缩写。

3、尽量避免名字中出现数字编号,如 Value1,Value2 等,除非逻辑上的确需要编号。比如驱动开发时为管脚命名,非编号名字反而不好。

4、对在多个文件之间共同使用的全局变量或函数要加范围限定符(建议使用模块名(缩写)作为范围限定符),这样定义的位置一目了然。

命名规则:

5、标识符名分为两部分:规范标识符前缀(后缀) + 含义标识 。非全局变量可以不用使用范围限定符前缀。
在这里插入图片描述
6、作用域前缀命名规则
在这里插入图片描述
7、所有宏定义、枚举常数、只读变量全用大写字母命名,用下划线分割单词。

例如:
const int MAX_LENGTH = 100; //这不是常量,而是一个只读变量,具体请往后看
#define FILE_PATH “/usr/tmp”

8、考虑到习惯性问题,局部变量中可采用通用的命名方式,仅限于n、i、j 等作为循环变量使用。

9、定义变量的同时千万千万别忘了初始化。定义变量时编译器并不一定清空了,这块内存,它的值可能是无效的数据。

10、不同类型数据之间的运算要注意精度扩展问题,一般低精度数据将向高精度数据扩展。

11、程序中不得出现仅靠大小写区分的相似的标识符。

例如:int x, X; 变量 x 与 X 容易混淆
void foo(int x); 函数 foo 与 FOO 容易混淆

特别注意:1(数字 1)和 l(小写字母 l)之间,0(数字 0)和o
(小写字母 o)之间的区别。
and so on…

注:摘自陈正冲《C语言深度剖析》,更多知识,需要的朋友关注微信公众号【嵌入式龙憨憨】获取。

通常我们变量命名遵守一般原则,命名法方法通常是:

1、匈牙利变量命名法:变量前加字符表示变量类型,如iCount,表示这是一个整形变量。

2、骆驼表示法:开头小写,中间单词开头大写,表示另一单词的开始,如:studentName。

3、使用单词组成变量名,下划线链接,如:number_of_student。

用什么命名方法并无规定,由程序员自己决定,不过作为一名优秀的程序员,一定要做到规范易懂。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值