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...

面试题 相关文章推荐
阿里巴巴Oracle DBA笔试题答案-备份恢复类
Nov 20 面试题
北京泡泡网网络有限公司.net面试题
Jul 17 面试题
DataReader和DataSet的异同
Dec 31 面试题
.TTL是什么?有什么用处,通常那些工具会用到它?(ping? traceroute? ifconfig? netstat?)
May 09 面试题
C#面试问题
Jul 29 面试题
施惠特软件测试面试题以及笔试题
May 13 面试题
MIS软件工程师的面试题
Apr 22 面试题
一份软件工程师的面试试题
Feb 01 面试题
AJax面试题
Nov 25 面试题
Ajax的工作原理
Dec 04 面试题
你在项目中用到了xml技术的哪些方面?如何实现的?
Jan 26 面试题
JAVA程序设计笔试题面试题一套
Jul 28 面试题
八皇后问题,输出了所有情况,不过有些结果只是旋转了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
我的论坛源代码(八)
2006/10/09 PHP
php学习之function的用法
2012/07/14 PHP
分享5个非常有用的Laravel Blade指令
2018/05/30 PHP
PHP 实现 JSON 数据的编码和解码操作详解
2020/04/22 PHP
模拟用户操作Input元素,不会触发相应事件
2007/05/11 Javascript
基于jquery的下拉框改变动态添加和删除表格实现代码
2020/09/12 Javascript
读jQuery之三(构建选择器)
2011/06/11 Javascript
javascript学习(一)构建自己的JS库
2013/01/02 Javascript
JQuery验证工具类搜集整理
2013/01/16 Javascript
JS获取农历日期具体实例
2013/11/14 Javascript
Javascript中设置默认参数值示例
2014/09/11 Javascript
node.js中的fs.symlinkSync方法使用说明
2014/12/15 Javascript
jQuery关键词说明插件cluetip使用指南
2015/04/21 Javascript
基于jquery实现页面滚动到底自动加载数据的功能
2015/12/19 Javascript
ztree实现权限横向显示功能
2017/05/20 Javascript
vue.js异步上传文件前后端实现代码
2017/08/22 Javascript
vue实现个人信息查看和密码修改功能
2018/05/06 Javascript
Vue利用History记录上一页面的数据方法实例
2018/11/02 Javascript
vue点击当前路由高亮小案例
2019/09/26 Javascript
Java Varargs 可变参数用法详解
2020/01/28 Javascript
python3处理含有中文的url方法
2018/05/10 Python
Python中pandas dataframe删除一行或一列:drop函数详解
2018/07/03 Python
深入理解Python异常处理的哲学
2019/02/01 Python
如何使用python爬虫爬取要登陆的网站
2019/07/12 Python
python操作openpyxl导出Excel 设置单元格格式及合并处理代码实例
2019/08/27 Python
python一些性能分析的技巧
2020/08/30 Python
如何利用pycharm进行代码更新比较
2020/11/04 Python
一款纯css3实现的响应式导航
2014/10/31 HTML / CSS
HTML5地理定位与第三方工具百度地图的应用
2016/11/17 HTML / CSS
美味咖啡的顶级烘焙师:Cafe Britt
2018/03/15 全球购物
加拿大服装和鞋类零售商:Mark’s
2021/01/04 全球购物
动漫设计与制作专业推荐信
2014/07/07 职场文书
护林员个人总结
2015/03/04 职场文书
大学毕业论文致谢词
2015/05/14 职场文书
Python实现PIL图像处理库绘制国际象棋棋盘
2021/07/16 Python
CSS使用SVG实现动态分布的圆环发散路径动画
2022/12/24 HTML / CSS