C语言软件编写规范.docVIP

  1. 1、本文档共7页,可阅读全部内容。
  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文档。上传文档
查看更多
C语言软件编写规范.doc

北京森馥科技股份有限公司 PAGE 1 PAGE 1 前言: 一个好的程序编写规范是编写高质量程序的保证。清晰、规范的源程序不仅仅是方便阅读,更重要的是能够便于检查错误,提高调试效率,从而最终保证软件的质量和可维护性。 说明: 本规范适用于公司内使用C语言编码的所有软件。本规范自发布之日起生效,以后新编写的和修改的 代码应遵守本规范。 注:使用固件和操作系统源代码应保留其代码风格 目录 TOC \o 1-3 \h \u HYPERLINK \l _Toc27326 1.排版与格式 PAGEREF _Toc27326 3 HYPERLINK \l _Toc10309 2.标识符命名与定义 PAGEREF _Toc10309 4 HYPERLINK \l _Toc29052 3.注释书写规范 PAGEREF _Toc29052 5 1.排版与格式 规则1:程序块采用缩进风格编写,每级缩进为4个空格。 程序块采用缩进风格编写,每级缩进为4个空格,不使用TAB键,以免用不同的编辑器阅读程序时,因TAB键所设置的空格数目不同而造成程序布局不整齐。 规则2:相对独立的程序块之间、变量说明之后必须加空行。 示例:如下例子不符合规范。 if (!valid_ni(ni)) { // program code ... } repssn_ind = ssn_data[index].repssn_index; repssn_ni = ssn_data[index].ni; 应如下书写 if (!valid_ni(ni)) { // program code ... } repssn_ind = ssn_data[index].repssn_index; repssn_ni = ssn_data[index].ni; 规则3:一条语句不能过长,如不能拆分需要分行写 换行时有如下建议: · 换行时要增加一级缩进,使代码可读性更好; ? · 低优先级操作符处划分新行;换行时操作符应该也放下来,放在新 ? · 换行时建议一个完整的语句放在一行,不要根据字符数断行 示例: if ((temp_flag_var == TEST_FLAG) (((temp_counter_var - TEST_COUNT_BEGIN) % TEST_COUNT_MODULE) = TEST_COUNT_THRESHOLD)) { // process code } 规则4: 多个短语句(包括赋值语句)不允许写在同一行内,即一行只写一条语句。 示例: int a = 5; int b = 10; //不好的排版 较好的排版 int a = 5; int b = 10; 规则5: if、for、do、while、case、switch、default等语句自占一行,且if、for、do、while等语句的执行语句部分无论多少都要加括号{}。 例: if (value max) { func(value); } 规则6: 在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符之前、之后 要加空格;进行非对等操作时,如果是关系密切的立即操作符(如-),后不应加空格。 (1)比较操作符, 赋值操作符=、 +=,算术操作符+、%,逻辑操作符、,位域操作符、^等双目操作符的前后加空格。 if (current_time = MAX_TIME_VALUE) a = b + c; a *= 2; a = b ^ 2; (2)!、~、++、--、(地址运算符)等单目操作符前后不加空格。 *p = a; // 内容操作*与内容之间 flag = !isEmpty; // 非操作!与内容之间 p = mem; // 地址操作 与内容之间 i++; // ++,--与内容之间 (3)-、. 前后不加空格。 p-id = pid; // -指针前后不加空格 (4)if、for、while、switch等与后面的括号间应加空格,使if等关键字更为突出、明显。 if (a = b c d) 规则7:尽量使用宏定义代替数字 2.标识符命名与定义 标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解 规则1:常量命名 常量命名的基本原则: l 符号常量的命名用大写字母表示。如: #define LENGTH 10 l 如果符号常量由多个单词构成,两个不同的单词之间可以用下划线连接。如: #define MAX_LEN 50 规则2:变量命名 变量命名的基本原则: 多个单词组成的变量名,首字母应该大写。如:UserInp

文档评论(0)

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

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

1亿VIP精品文档

相关文档