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面试题及答案一
Jun 18 面试题
应用服务器有那些
Jan 19 面试题
编码转换,怎样实现将GB2312编码的字符串转换为ISO-8859-1编码的字符串
Jan 07 面试题
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
Aug 25 面试题
什么是索引指示器
Aug 20 面试题
北京鼎普科技股份有限公司软件测试面试题
Apr 07 面试题
百度软件工程师职位
Feb 14 面试题
如何用Java实现列出某个目录下的所有子目录
Jul 20 面试题
Java如何调用外部Exe程序
Jul 04 面试题
AssertionError 跟一下那个类是 “is – a”的关系
Feb 21 面试题
Boolean b = new Boolean(“abcde”); 会编译错误码
Nov 27 面试题
Java语言程序设计测试题判断题部分
Jan 06 面试题
八皇后问题,输出了所有情况,不过有些结果只是旋转了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获取当前页面URL函数实例
2014/10/22 PHP
ci检测是ajax还是页面post提交数据的方法
2014/11/10 PHP
php检查页面是否被百度收录
2015/10/28 PHP
PHP判断JSON对象是否存在的方法(推荐)
2016/07/06 PHP
laravel框架邮箱认证实现方法详解
2019/11/22 PHP
JS中的public和private对象,即static修饰符
2012/01/18 Javascript
javascript的内存管理详解
2013/08/07 Javascript
Javascript 修改String 对象 增加去除空格功能(示例代码)
2013/11/30 Javascript
ECMAScript 6即将带给我们新的数组操作方法前瞻
2015/01/06 Javascript
jquery模拟进度条实现方法
2015/08/03 Javascript
jQuery实现的超链接提示效果示例【附demo源码下载】
2016/09/09 Javascript
Vue.js路由组件vue-router使用方法详解
2016/12/02 Javascript
jQuery 插件实现随机自由弹跳气泡样式
2017/01/12 Javascript
通俗易懂地解释JS中的闭包
2017/10/23 Javascript
原生javascript实现文件异步上传的实例讲解
2017/10/26 Javascript
微信小程序实现YDUI的ScrollNav组件
2018/02/02 Javascript
React props和state属性的具体使用方法
2018/04/12 Javascript
微信小程序实现侧边分类栏
2019/10/21 Javascript
原生JS运动实现轮播图
2021/01/02 Javascript
Python内置函数dir详解
2015/04/14 Python
python变量不能以数字打头详解
2016/07/06 Python
Eclipse和PyDev搭建完美Python开发环境教程(Windows篇)
2016/11/16 Python
Python实现发送QQ邮件的封装
2017/07/14 Python
python 使用正则表达式按照多个空格分割字符的实例
2018/12/20 Python
Python中三元表达式的几种写法介绍
2019/03/04 Python
python使用pygame模块实现坦克大战游戏
2020/03/25 Python
Django values()和value_list()的使用
2020/03/31 Python
CSS3实现粒子旋转伸缩加载动画
2016/04/22 HTML / CSS
用canvas做一个DVD待机动画的实现代码
2019/04/12 HTML / CSS
中国排名第一的外贸销售网站:LightInTheBox.com(兰亭集势)
2016/10/28 全球购物
最畅销的视频游戏享受高达90%的折扣:CDKeys
2020/02/10 全球购物
请用用Java代码写一个堆栈
2012/01/26 面试题
文秘专业应届生求职信范文
2013/11/14 职场文书
石油工程专业毕业生求职信
2014/04/13 职场文书
学习三严三实心得体会
2014/10/13 职场文书
大学军训决心书
2015/02/05 职场文书