資源描述:
《C代碼規(guī)范_免費(fèi)下載》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在應(yīng)用文檔-天天文庫(kù)。
1、高質(zhì)量C++/C編程指南,v1.0第1章文件結(jié)構(gòu)1.1版權(quán)和版本的聲明版權(quán)和版本的聲明位于頭文件和定義文件的開頭(參見示例1-1),主要內(nèi)容有:(1)版權(quán)信息。(2)文件名稱,標(biāo)識(shí)符,摘要。(3)當(dāng)前版本號(hào),作者/修改者,完成日期。(4)版本歷史信息。/**Copyright(c)2001,上海貝爾有限公司網(wǎng)絡(luò)應(yīng)用事業(yè)部*Allrightsreserved.**文件名稱:filename.h*文件標(biāo)識(shí):見配置管理計(jì)劃書*摘要:簡(jiǎn)要描述本文件的內(nèi)容**當(dāng)前版本:1.1*作者:輸入作者(或修改者)名字*完成日期:2001年7月20日
2、**取代版本:1.0*原作者:輸入原作者(或修改者)名字*完成日期:2001年5月10日*/示例1-1版權(quán)和版本的聲明1.2頭文件的結(jié)構(gòu)l【規(guī)則1-2-1】為了防止頭文件被重復(fù)引用,應(yīng)當(dāng)用ifndef/define/endif結(jié)構(gòu)產(chǎn)生預(yù)處理塊。define定義的標(biāo)識(shí)符使用模塊名稱+“_H”l【規(guī)則1-2-2】用#include格式來引用標(biāo)準(zhǔn)庫(kù)的頭文件(編譯器將從標(biāo)準(zhǔn)庫(kù)目錄開始搜索)。l【規(guī)則1-2-3】用#include“filename.h”格式來引用非標(biāo)準(zhǔn)庫(kù)的頭文件(編譯器將從用戶的工作目錄開始搜索)
3、。2001Page4of4高質(zhì)量C++/C編程指南,v1.01.3定義文件的結(jié)構(gòu)定義文件有三部分內(nèi)容:(1)定義文件開頭處的版權(quán)和版本聲明。(2)用戶數(shù)據(jù)定義。(3)程序代碼。第2章程序的版式2.1空行l(wèi)【規(guī)則2-1-1】在每個(gè)類聲明之后、每個(gè)函數(shù)定義結(jié)束之后都要加空行。在CBuilder中,上述空行用如下格式來注釋來代替//---------------------------------------------------------------------------l【規(guī)則2-1-2】在一個(gè)函數(shù)體內(nèi),邏揖上密切相關(guān)的語句
4、之間不加空行,其它地方應(yīng)加空行分隔。2.2代碼行l(wèi)【規(guī)則2-2-1】一行代碼只做一件事情,如只定義一個(gè)變量,或只寫一條語句。這樣的代碼容易閱讀,并且方便于寫注釋。l【規(guī)則2-2-2】if、for、while、do等語句自占一行,執(zhí)行語句不得緊跟其后。不論執(zhí)行語句有多少都要加{}。這樣可以防止書寫失誤。2【建議2-2-1】盡可能在定義變量的同時(shí)初始化該變量(就近原則)2.3代碼行內(nèi)的空格l【規(guī)則2-3-1】關(guān)鍵字之后要留空格。象const、virtual、inline、case等關(guān)鍵字之后至少要留一個(gè)空格,否則無法辨析關(guān)鍵字。象i
5、f、for、while等關(guān)鍵字之后應(yīng)留一個(gè)空格再跟左括號(hào)‘(’,以突出關(guān)鍵字。l【規(guī)則2-3-2】函數(shù)名之后不要留空格,緊跟左括號(hào)‘(’,以與關(guān)鍵字區(qū)別。l【規(guī)則2-3-3】‘(’向后緊跟,‘)’、‘,’、‘;’向前緊跟,緊跟處不留空格。l【規(guī)則2-3-4】‘,’之后要留空格,如Function(x,y,z)。如果‘;’不是一行的結(jié)束符號(hào),其后要留空格,如for(initialization;condition;update)。l【規(guī)則2-3-5】2001Page4of4高質(zhì)量C++/C編程指南,v1.0賦值操作符、比較操作符、
6、算術(shù)操作符、邏輯操作符、位域操作符,如“=”、“+=”“>=”、“<=”、“+”、“*”、“%”、“&&”、“
7、
8、”、“<<”,“^”等二元操作符的前后應(yīng)當(dāng)加空格。l【規(guī)則2-3-6】一元操作符如“!”、“~”、“++”、“--”、“&”(地址運(yùn)算符)等前后不加空格。l【規(guī)則2-3-7】象“[]”、“.”、“->”這類操作符前后不加空格。2【建議2-3-1】對(duì)于表達(dá)式比較長(zhǎng)的for語句和if語句,為了緊湊起見可以適當(dāng)?shù)厝サ粢恍┛崭?,如for(i=0;i<10;i++)和if((a<=b)&&(c<=d))2.4對(duì)齊l【規(guī)則2-4
9、-1】程序的分界符‘{’和‘}’應(yīng)獨(dú)占一行并且位于同一列,同時(shí)與引用它們的語句左對(duì)齊。l【規(guī)則2-4-2】{}之內(nèi)的代碼塊在‘{’右邊數(shù)格處左對(duì)齊。2.5長(zhǎng)行拆分l【規(guī)則2-5-1】代碼行最大長(zhǎng)度宜控制在70至80個(gè)字符以內(nèi)。代碼行不要過長(zhǎng),否則眼睛看不過來,也不便于打印。l【規(guī)則2-5-2】長(zhǎng)表達(dá)式要在低優(yōu)先級(jí)操作符處拆分成新行,操作符放在新行之首(以便突出操作符)。拆分出的新行要進(jìn)行適當(dāng)?shù)目s進(jìn),使排版整齊,語句可讀。2.6修飾符的位置l【規(guī)則2-6-1】應(yīng)當(dāng)將修飾符*和&緊靠變量名2.7注釋l【規(guī)則2-7-1】注釋是對(duì)代碼的
10、“提示”,而不是文檔。程序中的注釋不可喧賓奪主,注釋太多了會(huì)讓人眼花繚亂。注釋的花樣要少。l【規(guī)則2-7-2】如果代碼本來就是清楚的,則不必加注釋。否則多此一舉,令人厭煩。例如i++;//i加1,多余的注釋l【規(guī)則2-7-3】邊寫代碼邊注釋,修改代碼同時(shí)修改相應(yīng)