⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 华为软件编程规范和范例.htm

📁 华为软件编程规范和范例。 非原创
💻 HTM
📖 第 1 页 / 共 5 页
字号:
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=1><SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'">7 
      </SPAN><SPAN style="FONT-FAMILY: 黑体">可测性</SPAN></P></TD>
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=a1><SPAN lang=EN-US>36</SPAN></P></TD></TR>
  <TR style="page-break-inside: avoid">
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=1><SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'">8 
      </SPAN><SPAN style="FONT-FAMILY: 黑体">程序效率</SPAN></P></TD>
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=a1><SPAN lang=EN-US>40</SPAN></P></TD></TR>
  <TR style="page-break-inside: avoid">
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=1><SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'">9 
      </SPAN><SPAN style="FONT-FAMILY: 黑体">质量保证</SPAN></P></TD>
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=a1><SPAN lang=EN-US>44</SPAN></P></TD></TR>
  <TR style="page-break-inside: avoid">
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=1><SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'">10 
      </SPAN><SPAN style="FONT-FAMILY: 黑体">代码编辑、编译、审查</SPAN></P></TD>
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=a1><SPAN lang=EN-US>50</SPAN></P></TD></TR>
  <TR style="page-break-inside: avoid">
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=1><SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'">11 
      </SPAN><SPAN style="FONT-FAMILY: 黑体">代码测试、维护</SPAN></P></TD>
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=a1><SPAN lang=EN-US>52</SPAN></P></TD></TR>
  <TR style="page-break-inside: avoid">
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=1><SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'">12 
      </SPAN><SPAN style="FONT-FAMILY: 黑体">宏</SPAN></P></TD>
    <TD 
    style="PADDING-RIGHT: 0cm; PADDING-LEFT: 0cm; PADDING-BOTTOM: 0cm; WIDTH: 234pt; PADDING-TOP: 0cm" 
    vAlign=top width=312>
      <P class=a1><SPAN lang=EN-US>53</SPAN></P></TD></TR></TBODY></TABLE></DIV><SPAN 
lang=EN-US style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 150%; FONT-FAMILY: 宋体"><BR 
style="PAGE-BREAK-BEFORE: always" clear=all></SPAN>
<DIV class=Section2>
<H1><SPAN lang=EN-US style="FONT-FAMILY: 'Courier New'">1 </SPAN><SPAN 
style="FONT-FAMILY: 宋体">排版</SPAN></H1>
<P class=a3 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><SPAN lang=EN-US 
style="FONT-FAMILY: 'Times New Roman'">&sup1;</SPAN><SPAN lang=EN-US>1-1</SPAN><SPAN 
style="FONT-FAMILY: 宋体">:程序块要采用缩进风格编写,缩进的空格数为</SPAN><SPAN 
lang=EN-US>4</SPAN><SPAN style="FONT-FAMILY: 宋体">个。</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
style="FONT-FAMILY: 宋体">说明:对于由开发工具自动生成的代码可以有不一致。</SPAN></P>
<P class=a3 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><SPAN lang=EN-US 
style="FONT-FAMILY: 'Times New Roman'">&sup1;</SPAN><SPAN lang=EN-US>1-2</SPAN><SPAN 
style="FONT-FAMILY: 宋体">:相对独立的程序块之间、变量说明之后必须加空行。</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
style="FONT-FAMILY: 宋体">示例:如下例子不符合规范。</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">if (!valid_ni(ni))</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">{</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp; ... // program 
code</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">}</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">repssn_ind = 
ssn_data[index].repssn_index;</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">repssn_ni&nbsp; = 
ssn_data[index].ni;</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'"></SPAN>&nbsp;</P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
style="FONT-FAMILY: 宋体">应如下书写</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">if (!valid_ni(ni))</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">{</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp; ... // program 
code</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">}</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'"></SPAN>&nbsp;</P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">repssn_ind = 
ssn_data[index].repssn_index;</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">repssn_ni&nbsp; = 
ssn_data[index].ni;</SPAN></P>
<P class=a3 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><SPAN lang=EN-US 
style="FONT-FAMILY: 'Times New Roman'">&sup1;</SPAN><SPAN lang=EN-US>1-3</SPAN><SPAN 
style="FONT-FAMILY: 宋体">:较长的语句(</SPAN><SPAN lang=EN-US>&gt;80</SPAN><SPAN 
style="FONT-FAMILY: 宋体">字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
style="FONT-FAMILY: 宋体">示例:</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">perm_count_msg.head.len 
= NO7_TO_STAT_PERM_COUNT_LEN</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
+ STAT_SIZE_PER_FRAM * sizeof( _UL );</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'"></SPAN>&nbsp;</P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">act_task_table[frame_id 
* STAT_TASK_CHECK_NUMBER + index].occupied</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
= stat_poi[index].occupied;</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'"></SPAN>&nbsp;</P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">act_task_table[taskno].duration_true_or_false</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
= SYS_get_sccp_statistic_state( stat_item );</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'"></SPAN>&nbsp;</P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">report_or_not_flag 
= ((taskno &lt; MAX_ACT_TASK_NUMBER)</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
&amp;&amp; (n7stat_stat_item_valid (stat_item))</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US 
style="FONT-SIZE: 9pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
&amp;&amp; (act_task_table[taskno].result_data != 0));</SPAN></P><B><SPAN 
lang=EN-US 
style="FONT-SIZE: 10.5pt; LINE-HEIGHT: 150%; FONT-FAMILY: 'Courier New'"><BR 
style="PAGE-BREAK-BEFORE: always" clear=all></SPAN></B>
<P class=a3 style="MARGIN-LEFT: 0cm; TEXT-INDENT: 0cm"><SPAN lang=EN-US 
style="FONT-WEIGHT: normal; FONT-FAMILY: 'Times New Roman'">&sup1;</SPAN><SPAN 
lang=EN-US>1-4</SPAN><SPAN 
style="FONT-FAMILY: 宋体">:循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分,长表达式要在低优先级操作符处划分新行,操作符放在新行之首。</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
style="FONT-FAMILY: 宋体">示例:</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">if ((taskno &lt; 
max_act_task_number)</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp; &amp;&amp; 
(n7stat_stat_item_valid (stat_item)))</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">{</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">&nbsp;&nbsp;&nbsp; ... // program 
code</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">}</SPAN></P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'"></SPAN>&nbsp;</P>
<P class=MsoNormal 
style="MARGIN-LEFT: 24pt; LINE-HEIGHT: 150%; TEXT-ALIGN: left" align=left><SPAN 
lang=EN-US style="FONT-FAMILY: 'Courier New'">for (i = 0, j = 0; (i &lt; 
BufferKeyword[word_index].word_length)</SPAN></P>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -