C语言变量的命名规则都有哪些


Posted in 面试题 onDecember 27, 2013
一般规则:
【规则1-1】命名应当直观且可以拼读,可望文知意,便于记忆和阅读。
标识符最好采用英文单词或其组合,不允许使用拼音。程序中的英文单词一般不要太复杂,用词应当准确。
【规则1-2】命名的长度应当符合“min-length && max-information”原则。
C 是一种简洁的语言, 命名也应该是简洁的。例如变量名MaxVal 就比MaxValueUntilOverflow 好用。标识符的长度一般不要过长,较长的单词可通过去掉“元音”形成缩写。
另外,英文词尽量不缩写,特别是非常用专业名词,如果有缩写,在同一系统中对同一单词必须使用相同的表示法,并且注明其意思。
【规则1-3】当标识符由多个词组成时,每个词的第一个字母大写,其余全部小写。比如:int CurrentVal;这样的名字看起来比较清晰,远比一长串字符好得多。
【规则1-4】尽量避免名字中出现数字编号,如Value1,Value2 等,除非逻辑上的确需要编号。比如驱动开发时为管脚命名,非编号名字反而不好。
初学者总是喜欢用带编号的变量名或函数名,这样子看上去很简单方便,但其实是一颗颗定时炸弹。这个习惯初学者一定要改过来。
【规则1-5】对在多个文件之间共同使用的全局变量或函数要加范围限定符(建议使用模块名(缩写)作为范围限定符)。(GUI_ ,etc)
标识符的命名规则:
【规则1-6】标识符名分为两部分:规范标识符前缀(后缀) + 含义标识。非全局变量可以不用使用范围限定符前缀。

Tags in this post...

面试题 相关文章推荐
PHP面试题集
Dec 18 面试题
xml有哪些解析技术?区别是什么
Apr 26 面试题
大整数数相乘的问题
Jul 22 面试题
2019年c语言经典面试题目
Aug 17 面试题
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
Aug 25 面试题
OSPF有什么优点?为什么OSPF比RIP收敛快?
Feb 13 面试题
可以使用抽象函数重写基类中的虚函数吗
Jun 02 面试题
abstract 可以和 virtual 一起使用吗?可以和 override 一起使用吗?
Oct 15 面试题
Linux内核的同步机制是什么?主要有哪几种内核锁
Jul 11 面试题
Python里面如何实现tuple和list的转换
Jun 13 面试题
Python里面search()和match()的区别
Sep 21 面试题
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
Jul 30 面试题
八皇后问题,输出了所有情况,不过有些结果只是旋转了90度
Aug 15 #面试题
请编写一个 C 函数,该函数在给定的内存区域搜索给定的字符,并返回该字符所在位置索引值
Sep 15 #面试题
大整数数相乘的问题
Jul 22 #面试题
C语言编程题
Mar 09 #面试题
求最大连续递增数字串(如"ads3sl456789DF3456ld345AA"中的"456789")
Sep 11 #面试题
请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1
Jul 16 #面试题
一套带答案的C++笔试题
Jan 10 #面试题
You might like
PHP.MVC的模板标签系统(三)
2006/09/05 PHP
php !function_exists("T7FC56270E7A70FA81A5935B72EACBE29"))代码解密
2011/01/07 PHP
php连接mssql数据库的几种方法
2013/02/21 PHP
phpExcel中文帮助手册之常用功能指南
2014/08/18 PHP
详解PHP发送邮件知识点
2018/05/06 PHP
统计PHP目录中的文件数方法
2019/03/05 PHP
js 目录列举函数
2008/11/06 Javascript
javascript下string.format函数补充
2010/08/24 Javascript
nodejs中操作mysql数据库示例
2014/12/20 NodeJs
js实现简单的省市县三级联动效果实例
2016/02/18 Javascript
如何通过js实现图片预览功能【附实例代码】
2016/03/30 Javascript
详解前端构建工具gulpjs的使用介绍及技巧
2017/01/19 Javascript
jQuery Chosen通用初始化
2017/03/07 Javascript
JS引用传递与值传递的区别与用法分析
2018/06/01 Javascript
使用JavaScript中的lodash编写双色球效果
2018/06/24 Javascript
详解jQuery中的easyui
2018/09/02 jQuery
在小程序中使用canvas的方法示例
2018/09/17 Javascript
vue中v-for循环给标签属性赋值的方法
2018/10/18 Javascript
了解javascript中的Dom操作
2019/05/27 Javascript
前端Vue项目详解--初始化及导航栏
2019/06/24 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
[01:03:00]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第一局
2016/02/25 DOTA
Django静态资源URL STATIC_ROOT的配置方法
2014/11/08 Python
python微信跳一跳游戏辅助代码解析
2018/01/29 Python
python调用webservice接口的实现
2019/07/12 Python
python障碍式期权定价公式
2019/07/19 Python
python支付宝支付示例详解
2019/08/22 Python
Python PyInstaller安装和使用教程详解
2020/01/08 Python
PyTorch实现ResNet50、ResNet101和ResNet152示例
2020/01/14 Python
Python使用Socket实现简单聊天程序
2020/02/28 Python
python,Java,JavaScript实现indexOf
2020/09/09 Python
用python读取xlsx文件
2020/12/17 Python
印尼美容产品购物网站:PerfectBeauty.id
2017/12/01 全球购物
日本航空官方网站:JAL
2019/06/19 全球购物
美国家居用品和厨具购物网站:DealsDot
2019/10/07 全球购物
2014年秋季新学期寄语
2014/08/02 职场文书