temp 可缩写为  tmp  ;
flag 可缩写为  flg  ;
statistic 可缩写为  stat ;
increment 可缩写为  inc  ;
message 可缩写为  msg  ;
l      局部变量(Local  (其它:g    全局变量(Global...
i      数据类型(Interger
v      变量(Variable  (其它:c    常量(Const...
Width  变量含义
用正确的反义词组命名具有互斥意义的变量或相反动作的函数等。
说明:下面是一些在软件中常用的反义词组。
add / remove      begin / end        create / destroy
insert / delete    first / last      get / release
increment / decrement                put / get
add / delete      lock / unlock      open / close
min / max          old / new          start / stop
next / previous    source / target    show / hide
send / receive    source / destination
cut / paste        up / down
示例:
int  min_sum;
int  max_sum;
int  add_user( BYTE *user_name );
int  delete_user( BYTE *user_name );
¹ 明确公共变量与操作此公共变量的函数或过程的关系,如访问、修改及创建等。
说明:明确过程操作变量的关系后,将有利于程序的进一步优化、单元测试、系统联调以及代码维护等。这种关系的说明可在注释或文档中描述。
示例:在源文件中,可按如下注释形式说明。
RELATION    System_Init    Input_Rec    Print_Rec  Stat_Score
Student    Create        Modify      Access      Access
Score      Create        Modify      Access      Access, Modify
注:RELATION为操作关系;System_InitInput_RecPrint_RecStat_Score为四个不同的函数;StudentScore为两个全局变量;Create表示创建,Modify表示修改,Access表示访问。
其中,函数Input_RecStat_Score都可修改变量Score,故此变量将引起函数间较大的耦合,并可能增加代码测试、维护的难度。
½ :时刻注意表达式是否会上溢、下溢。
示例:如下程序将造成变量下溢。
unsigned char size ;
while (size-- >= 0) // 将出现下溢
{
    ... // program code
}
size等于0时,再减1不会小于0,而是0xFF,故程序是一个死循环。应如下修改。
char size; // unsigned char 改为char
while (size-- >= 0)
{
    ... // program code
}
½ 9-7:使用变量时要注意其边界值的情况。
示例:如C语言中字符型变量,有效值范围为-128127。故以下表达式的计算存在一定风险。
char chr = 127;
int sum = 200;
chr += 1; // 127chr的边界值,再加1将使chr上溢到-128,而不是128
sum += chr; // sum的结果不是328,而是72
chrsum为同一种类型,或表达式按如下方式书写,可能会好些。
sum = sum + chr + 1;
有可能的话,if语句尽量加上else分支,对没有else分支的语句要小心对待;编程英语要求高吗switch语句必须有default分支。
不允许把多个短语句写在一行中,即一行只写一条语句。
iffordowhilecaseswitchdefault等语句自占一行,且iffordowhile等语句的执行语句部分无论多少都要加括号{}
(1) 逗号、分号只在后面加空格。
int a, b, c;
(2)比较操作符, 赋值操作符"=" "+=",算术操作符"+""%",逻辑操作符"&&""&",位域操作符"<<""^"等双目操作符的前后加空格。
if (current_time >= MAX_TIME_VALUE)
a = b + c;
a *= 2;
a = b ^ 2;
(3)"!""~""++""--""&"(地址运算符)等单目操作符前后不加空格。
*p = 'a';        // 内容操作"*"与内容之间
flag = !isEmpty; // 非操作"!"与内容之间
p = &mem;        // 地址操作"&" 与内容之间
i++;            // "++","--"与内容之间
(4)"->""."前后不加空格。
p->id = pid;    // "->"指针前后不加空格
(5) ifforwhileswitch等与后面的括号间应加空格,使if等关键字更为突出、明显。
if (a >= b && c > d)
:注释格式尽量统一,建议使用“/* …… */”。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。