




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1排版风格1-1:程序块要采用缩进风格编写,缩进的空格数为4个。1-2:相对独立的程序块之间或for、if> do、while> switch等语句前后应加一空行。示例:如下例子不符合规范。例一:if (!valid_ni(ni)./ program coderepssn_ind = ssn_dataindexrepssn_index;repssn_ni = ssn_dataindex.ni;例二:char *pcontext;int nlndex;long icounter;pcontext = new (cstring); if (pcontext = null)return
2、false;应如下书写例一:if (!valid_ni(ni) / program coderepssn_ind = ssn_dataindex.repssn_index; repssn_ni = ssn_dataindex.ni;例二:char *pcontext;int nlndex;long icounter;pcontext = new (cstring);if (pcontext = null)return false;1- 3:不允许把多个短语句写在一行中,即一行只写一条语句。示例:如下例子不符合规范。rect.length = 0; rect.width = 0;应如下书写rec
3、t.length = 0;rect.width = 0;1- 4: ifx for> do、while> case、switch、default等语句自占一行,且if、for、do、wh订e等语句的执行语句部分无论多少都要加括号。示例:如下例子不符合规范。if (pusercr = null) return;应如下书写:if (pusercr = null)return;1- 5:对齐只使用空格键,不使用tab键。说明:以免用不同的编辑器阅读程序时,因tab键所设置的空格数目不同而造成程序布局 不整齐。1- 6:函数或过程的开始、结构的定义及循环、判断等语句中的代码都要釆用缩进风格
4、,case 语句下的情况处理语句也要遵从语句缩进要求。1- 7:程序块的分界符(如c/c+语言的大括号''和'')应各独占一行并且位于同一列, 同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义 以及if、for、do、while> switch> case语句中的程序都要采用如上的缩进方式。示例:如下例子不符合规范。for (. . .)./ program codeif (.) / program codevoid example_fun( void )./ program code应如下书写。for (.). / pr
5、ogram codeif (). / program codevoid example_fun( void ). / program code1- 8:在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符之前、之后或者 前后要加空格;进行非对等操作时,如果是关系密切的立即操作符(如一>),后不应加 空格。说明:采用这种松散方式编写代码的目的是使代码更加清晰。由于留空格所产生的清晰性是相对的,所以,在已经非常清晰的语句中没有必要再留空格, 如果语句已足够清晰则括号内侧(即左括号后面和右括号前面)不需要加空格,多重括号间 不必加空格,因为在c/c+ +语言中括号己经是最清晰的标志了
6、。在长语句中,如果需要加的空格非常多,那么应该保持整体清晰,而在局部不加空格。给 操作符留空格时不要连续留两个以上空格。示例:(1) 逗号、分号只在后面加空格。int a, b, c;(2) 比较操作符,赋值操作符” =”、”+= “,算术操作符”+ ”、“”,逻辑操作符”&&”、”&”,位域操作符”<<”、等双目操作符的前后加空格。if (curren>= max_time_value)a = b + c;a *= 2;a = b a 2;(3)n”+”、”一”、”&”(地址运算符)等单目操作符前后不加空格。*p = 1 a 1;/内容操作r
7、”与内容之间flag = jisempty; /非操作与内容之间p = &mem;/地址操作”&”与内容之间i+ + ;/ fl+ n 11与内容z间(4)仁” "前后不加空格。p->id = pid; /指针前后不加空格(5) if for while、switch等与后面的括号间应加空格,使if等关键字更为突出. 明显cif (a >= b && c > d) 1-8:对结构成员赋值或有连续多条赋值语句时,等号对齐。1-9: #define的各个字段对齐。以下示例不符合规范#define max_task_number 100#d
8、efine left_x 10#define bottom_y 400应书写成:#definemax_task_number100#defineleft_x10#definebottom_y4002标识符命名2- 1:标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的 缩写,避免使人产生误解。标识符应采用英文单词或组合,切忌采用拼音来命名。说明:较短的单词可通过去掉“元音”形成缩写;较长的单词可取单词的头儿个字母形成 缩写;一些单词有大家公认的缩写。示例:temp可缩写为 tmp ;flag可缩写为fig ;2- 2:对于变量命名,禁止取单个字符(如i、j、k.),建
9、议除了要有具体含义外,还能表 明其变量类型、数据类型等,但i、j、k作局部循环变量是允许的。说明:变量,尤其是局部变量,如果用单个字符表示,很容易敲错(如i写成j),而编 译时又检查不出来,有可能为了这个小小的错误而花费大量的查错时间。示例:下面所示变量名的定义方法可以借鉴。int li_demowidth;long gl_demowidth;demo_stru stru_demo;其变量名解释如下:1局部变量g 全局变量stru 结构i数据类型(interger)2- 3:定义类型和宏定义常数以大写字母命名,各单词之间用下划线隔开。2- 4:对于指针的定义必须以小写的“p”开头,符号必须紧靠
10、与变量名。2- 5:命名规范必须在同一项目中统一,比如采用全小写加下划线的风格或大小写混排的方式, 不要使用大小写与下划线混排的方式,用作特殊标识如标识成员变量或全局变量的m_和 g_,其后加上大小写混排的方式是允许的。示例: add_user 不允许,add_user> adduser> m_adduser 允许。2- 6:自己特有的命名风格,要自始至终保持一致,不可来回变化。说明:个人的命名风格,在符合所在项冃组或产品组的命名规则的前提下,才可使用。(即命名规则中没冇规定到的地方才可冇个人命名风格)。3可靠性、可维护性3-1:具有文件作用域的对象尽量声名为static。3- 2
11、:显示地给出函数的返回值类型,无返回值函数定义为voido说明:c、c+语言的编译系统默认无显示返回值函数的返回值类型为int。3- 3:声明函数原型时给出参数名称和类型,并且与实现此函数时的参数名称、类型保持一致,无参数的函数,用void声明。示例:下面声明不正确。int checkdata ();int setpoint( int, int );应改为如下声明:int checkdata ( void );int setpoint( int xz int y );3-4:任何if. .else if语句,最后必须有一个收尾的else。说明:对不期望的情况(包括异常情况)进行处理,保证程序逻
12、辑严谨。3-5:不管有没有无效分支,switch函数一定要defaut这个分支。说明:对不期望的情况(包括异常情况)进行处理,保证程序逻辑严谨。3-6:每个case语句的结尾不要忘了加break,否则将导致多个分支重叠。3- 7:注意运算符的优先级,并用括号明确表达式的操作顺序,避免使用默认优先级。不允许使用复杂的操作符组合。3- 8:使用宏定义表达式时,要使用完备的括号。示例:如下的宏定义表达式都存在一定的隐患。#define rec_area(a, b) a * b#define rec_area(m, b) (a * b)正确的定义为:#define rec_area(“ b) (a)
13、* (b)3- 9:在逻辑表达式中使用明确的逻辑判断。示例:如下逻辑表达式不规范。(1) if ( strlen(strname)(2) for ( index = max_ssn_numeer; index ; index )(3) while ( p && *p ) /假设p为宁符指针应改为如下:(1) if ( strlen(strname) != 0 )(2) for ( index = max_ssn_number; index != 0 ; index -)(3) while ( (p != null) &&(*p != *0 * )3- 10:语句嵌套层次不得超过5层。说明:嵌套层次太多,增加了代码的复杂度及测试的难度,容易出错,增加代码维护 的难度。3-11:用sizeof来确定结构、联合或变量占用的空间。说明:这样可提高程序的可读性、可维护性,同时也增加了程序的可移植性4效率4- 1:使用自加、自减指令说明:通常使用自加、自减指令和复合赋值表达式(如=1及等)都能够生成 高质量的程序代码,编译器通常都能够生成inc和dec之
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 创意手绘设计核心要点解析
- 医院物业管理服务方案
- 公共关系学社会责任评估试题及答案
- 房屋结构设计
- 方形公园景观设计案例
- 行政管理经济法知识提升方法试题及答案
- 社区农产品销售支持服务合同书
- 广告推广投放合作协议
- 水利水电工程环境保护试题及答案
- 环保型蔬菜种植基地建设协议
- 《T CPSS 1003-2019-交流输入电压暂降与短时中断的低压直流型补偿装置技术规范》
- 2024年度新能源汽车产业联盟合作协议3篇
- 2024年考研英语一阅读理解80篇试题及答案
- 施工现场扬尘污染治理巡查记录
- 地域文化(专)-终结性考试-国开(SC)-参考资料
- 户用光伏逆变器Modbus通讯协议地址定义
- 2024年会计专业考试高级会计实务试题与参考答案
- 2022年一级注册建筑师建筑设计知识考试真题及答案
- 电子政务概论-形考任务5(在线测试权重20%)-国开-参考资料
- 古代小说戏曲专题-形考任务2-国开-参考资料
- 2020-2024年高考英语试题分类汇编:阅读理解01(人与自然)(解析版)
评论
0/150
提交评论