aihot  2017-05-09 16:32:26  OpenCV |   查看评论   

g_uiCurrentUser = 0; /* 设置当前用户索引号 */ 

应必为: 
for (uiUserNo = 0; uiUserNo < MAX_USER_NO; uiUserNo++) 

...; /* 初始化用户数据 */ 


g_uiCurrentUser = 0; /* 设置当前用户索引号 */ 

pSamplePointer = NULL; 

<规则14> 每个函数的源程序行数原则上应该少于200行。 
对于消息分流处理函数,完成的功能统一,但由于消息的种类多,可能超过200行的限制,不属于违反规定。 

<规则15> 语句嵌套层次不得超过5层。 
嵌套层次太多,增加了代码的复杂度及测试的难度,容易出错,增加代码维护的难度。 

<规则16> 用sizeof来确定结构、联合或变量占用的空间。 
这样可提高程序的可读性、可维护性,同时也增加了程序的可移植性。 

<规则17> 避免相同的代码段在多个地方出现。 
当某段代码需在不同的地方重复使用时,应根据代码段的规模大小使用函数调用或宏调用的方式代替。这样,对该代码段的修改就可在一处完成,增强代码的可维护性。 

<规则18> 使用强制类型转换。 
示例: 
USER_RECORD *pUser; 

pUser = (USER_RECORD *) malloc (MAX_USER * sizeof(USER_RECORD)); 

<规则19> 避免使用 goto 语句。 
<规则20> 避免产生摮绦蚪釘(program knots),在循环语句中,尽量避免break、goto的使用。 
如下例子: 
for( i = 0; i < n; i++) 

bEof = fscanf( pInputFile, "%d;", &x[i]); 
if( bEof == EOF ) 

break; 

nSum += x[i]; 


最好按以下方式书写,避免程序打摻釘: 
for( i = 0; i < n && bEof= EOF; i++) 

bEof = fscanf( pInputFile, "%d;", &x[i]); 
if( bEof!= EOF ) 

nSum += x[i]; 



<规则21> 功能相近的一组常量最好使用枚举来定义。 
不推荐定义方式: 
/* 功能寄存器值 */ 
#define ERR_DATE 1 /* 日期错误 */ 
#define ERR_TIME 2 /* 时间错误 */ 
#define ERR_TASK_NO 3 /* 任务号错误 */ 
 

除特别注明外,本站所有文章均为 赢咖4注册 原创,转载请注明出处来自常见C/C++编码规范(4)

留言与评论(共有 0 条评论)
   
验证码:
[lianlun]1[/lianlun]