网站大量收购独家精品文档,联系QQ:2885784924

程序代码编写规范.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
程序代码编写规范 命名规范 标识符的名字应当直观且可以拼读,可望文生义,不必进行“解码”。最好采用英文单词或其组合,便于记忆和阅读。切忌使用汉语拼音来命名。程序中的英文单词一般不要太复杂,用词应当准确。 标识符的长度应当符合“min-lengthmax-information”原则。如果标识符采用的英文单词太长,几个单词组合后会更长,此时应该采用一些通用而合理的缩写或者应用领域专业术语的缩写。例如:Program :---- Pro Channel----CH Transponder----TP .程序中不要出现仅靠大小写来区分的相似标识符。 不要使程序中出现局部变量和全局变量同名的现象,尽管由于两者的作用域不同而不会发生语法错误,但会使人误解。 变量的名字应当使用“名词”或者“形容词+名词”的格式来命名。 例如:int ivalue; int ioldValue; int newValue; 全局函数的名字应当使用“动词”或者“动词+名词”(动宾词组)。 用正确的反义词组命名具有相反意义的变量或相反动作的函数等。 例如:void SetValue(int iValue) int GetValue(void) 尽量避免名字中出现数字编号,如Value1、Value2等,除非逻辑上的确需要如此。 类型名和函数名均以大写字母开头的单词组合而成。 变量名和参数名采用第一个单词首字母小写而后面的单词首字母大写的单词组合。 符号常量和宏名用全大写的单词组合而成,并在单词之间用单下划线分隔,注意首尾最好不要使用下划线。 语句编写规范 函数变量都应该初始化。 虽然C语言支持默认类型为int,但都不要使用默认数据类型。一定要明确指出函数每一个形参的类型和返回值类型。 在使用运算符的表达式中,要尽量把最有可能为false的子表达式放在的左边;同样在使用运算符||的表达式中,要尽量把最有可能为TRUE的子表达式放在||的左边。因为C语言对逻辑表达式的判断采取“突然死亡法”(猝死法):如果左边的子表达式计算结果为FALSE,则整个表达式就为FALSE,后面的子表达式没有必要再计算,如果||左边的子表达式计算结果为TRUE,则整个表达式就为TRUE,因此后面的子表达式没有必要再计算,这就可以提高程序的执行效率。 不要编写太复杂的复合表达式,应该拆分为多个独立的语句。 在if/else结构中,要尽量把为TRUE的概率较高的条件判断置于前面,这样可以提高该段程序的性能。 switch没有自动跳出的功能,每个case子句的结尾不要忘了加上break,不要忘记最后那个default子句。即使程序真的不需要default处理,也应该保留语句default:break;这样做并非多此一举,而是为了防止别人误以为你忘了default处理,以及出于清晰性和对称性的考虑。 对于for循环语句,如果计数器从0开始计数,则建议for语句的循环控制变量的取值采用“前闭后开区间”写法,要防止出现“差1”错误。 例如:for(x = 0; x N; x++) { } 不要写成 for(x = 0; x = N - 1; x++) { } 在多重嵌套的循环中,如果有可能,应当将最长的循环放在最内层,最短的循环放在最外层,这样可以减少CPU跨切循环层的次数,从而优化程序的性能。 如果循环体内存在逻辑判断,并且循环次数很大,宜将逻辑判断移到循环体的外面。 尽量使用含义直观的符号常量来表示那些将在程序中多次出现的数字或字符串。例如给界面中用到的一些位置常量等。 需要对外公开的常量放在头文件中,不需要对外公开的常量放在定义文件的头部。为便于管理,可以把不同模块的常量集中存放在一个公共的头文件中。如果某一常量与其他常量密切相关,应在定义中包含这种关系,而不应给出一个孤立的值。例如: const float RADIUS = 100; const float DIAMETER = RADIUS*2 三、函数编写规范 在你需要某种功能的函数时,首先查看现有的库中是否提供了类似的函数。不要编写函数库中已有的函数,不仅因为这种是重复劳动,而且自制的函数在各个质量属性方面一般都不如对应的库函数。库函数是经过严格测试和实践检验的。 应当在函数原型中写出形参名称,虽然编译器会忽略它。这样做的目的是使函数具有“自说明”和“自编档”能力。不要在函数体内定义与形参同名的局部变量,否则会遮蔽形参。 如果函数没有参数,那么使用void而不要空着,这是因为标准C把空的参数列表解释为可以接受任何类型和个数的参数。 参数命名要恰当,输入参数和输出参数的顺序要合理。 例如:void StringCopy(char *str1, char *str2); 应改为 void S

文档评论(0)

nxuy179 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档