2011軟考軟件設計師:C語言代碼規范問題(3)
1.3 程序注釋
1.3.1程序注釋是程序員與日后的程序讀者之間通信的重要手段之一,注釋分為文件注釋、函數注釋和功能注釋。
1.3.2正規程序的注釋應注意:
——注釋行的數量占到整個源程序的1/3到1/2。
1.3.3文件注釋位于整個源程序的最開始部分,注釋后空兩行開始程序正文。它包括:
——程序標題。
——目的、功能說明。
——文件作者、***修改日期等說明。
例:
./
(空一行)
標題: Demo.c
功能: 測試VxWorks的各種系統調用。
說明:
該程序測試各種VxWorks的系統調用函數。包括任務(taks)的創建、掛起及任務間通過信號燈實現同步,通過消息隊列進行通訊。
程序創建了兩個任務:一個高優先級的任務和一個低優先級的任務。兩個任務間通過一個二進制的信號燈進行同步,通過消息隊列進行通訊。
當前版本: x.x
修改信息: 2000.06.05 John, Initial Version
2000.07.05 Tom, Bug xxxx fixed
/
(空2行,開始程序正文)
1.3.4 函數注釋通常置于每函數或過程的開頭部分,它應當給出函數或過程的整體說明對于理解程序本身具有引導作用。一般包括如下條目:
——模塊標題。
——有關本模塊功能和目的的說明。
——調用格式
——接口說明:包括輸入、輸出、返回值、異常。
——算法。如果模塊中采用了一些復雜的算法。
例:
file://(注釋開頭應和上一函數空兩行)
(注釋開頭與上一函數***一行間隔兩行)
/
標題:assignmentComplete
功能:BSC=%26gt;MSC消息生成函數,生成assignment_complete指配完成消息(BSMAP消息) .
格式:
int assignmentComplete(int iCellId, int iServiceChannnelNum, char pszMSGData) throw(exception1, exception2)
輸入:
int iCellId: MS所在的小區識別
iCellId取值:0x00-——0xff .4.
Q/ECC/BJ 010—2001
int iServiceChannnelNum:MS所占的業務信道號碼
輸出:
char pszMSGData:指配完成消息數據
返回值: 0x00正常
異常:exception1異常情況1, exception2異常情況2
/
( 注釋后直接開始程序正文,不空行。)
1.3.5 功能性注釋嵌在源程序體中,用于描述其后的語句或程序段做什么工作,也就是解釋下面要做什么,或是執行了下面的語句會怎么樣。而不要解釋下面怎么做,因為解釋怎么做常常與程序本身是重復的。
例: /把 amount 加到 total中/
total = amount + total;
這樣的注釋僅僅是重復了下面的程序,對于理解它的工作并沒有什么作用。而下面的注釋,有助于讀者理解。
/將每月的銷售額amount加到年銷售額total中/
total = amount + total;
【編輯推薦】