目录 1 排版 6 2 注释 11 3 标识符命名 18 4 可读性 20 5 变量、结构 22 6 函数、过程 28 7 可测性 36 8 程序效率 40 9 质量保证 44 10 代码编辑、编译、审查 50 11 代码测试、维护 52 12 宏 53 软件编程规范总则 1 排版 1 排版1 1-1 :程序块要采用缩进风格编写, 缩进的空格数为 4 个。说明:对于由开发工具自动生成的代码可以有不一致。1 1-2 :相对独立的程序块之间、变量说明之后必须加空行。示例:如下例子不符合规范。 if (!valid_ni(ni)) { ... // program code } repssn_ind = ssn_data[index].repssn_index; repssn_ni = ssn_da ta[index].ni; 应如下书写 if (!valid_ni(ni)) { ... // program code } repssn_ind = ssn_data[index].repssn_index; repssn_ni = ssn_da ta[index].ni; 1 1-3 :较长的语句( >80 字符)要分成多行书写, 长表达式要在低优先级操作符处划分新行, 操作符放在新行之首, 划分出的新行要进行适当的缩进, 使排版整齐,语句可读。示例: = NO7_TO_STAT_PERM_COUNT_LEN + STAT_SIZE_PER_FRAM * sizeof( _UL ); act_task_table[frame_id * STAT_TASK_CHECK_NUMBER + index].occupied = stat_poi[index].occupied; act_task_table[taskno].duration_true_or_false = p_statistic_state( stat_item ); report_or_not_flag = ((taskno < MAX_ACT_TASK_NUMBER) 仅供内部使用 2 软件编程规范总则 1 排版 && (n7stat_stat_item_valid (stat_item)) && (act_task_table[taskno].result_data != 0)); 仅供内部使用 3 软件编程规范总则 1 排版1 1-4 : 循环、判断等语句中若有较长的表达式或语句, 则要进行适应的划分, 长表达式要在低优先级操作符处划分新行,操作符放在新行之首。示例: if ((taskno < max_act_task_number) && (n7 stat_stat_item_valid (stat_item))) { ... // program code } for (i = 0, j = 0; (i < BufferKeyword[word_index].word_length) && (j < ); i++, j++) { ... // program code } for (i = 0, j = 0; ( i < first_word_length) && (j < second_word_length); i ++, j++) { ... // program code } 1 1-5 :若函数或过程中的参数较长, 则要进行适当的划分。示例: pare((BYTE *) & stat_object, (BYTE *) & (act_task_table[taskno].stat_object), sizeof (_STAT_OBJECT)); n7stat_flash_act_duration( stat_item, frame_id *STAT_TASK_CHECK_NUMBER + index, stat_object ); 1 1-6 :不允许把多个短语句写在一行中,即一行只写一条
华为C语言编程规范.pdf 来自淘豆网m.daumloan.com转载请标明出处.