C C++語(yǔ)言編程規(guī)范

C C++語(yǔ)言編程規(guī)范

ID:41033123

大小:32.50 KB

頁(yè)數(shù):6頁(yè)

時(shí)間:2019-08-14

C C++語(yǔ)言編程規(guī)范_第1頁(yè)
C C++語(yǔ)言編程規(guī)范_第2頁(yè)
C C++語(yǔ)言編程規(guī)范_第3頁(yè)
C C++語(yǔ)言編程規(guī)范_第4頁(yè)
C C++語(yǔ)言編程規(guī)范_第5頁(yè)
資源描述:

《C C++語(yǔ)言編程規(guī)范》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。

1、C、C++語(yǔ)言編程規(guī)范一.目的  良好的編程風(fēng)格是提高程序可靠性非常重要的手段,也是大型項(xiàng)目多人合作開(kāi)發(fā)的技術(shù)基礎(chǔ)。為了提高C/C++源程序的質(zhì)量和可維護(hù)性,通過(guò)本規(guī)范定義來(lái)避免不好的編程風(fēng)格,增強(qiáng)程序的易讀性,便于自己及他人閱讀。本規(guī)范的內(nèi)容包括:排版、注釋、標(biāo)識(shí)符命名、可讀性、變量、結(jié)構(gòu)、函數(shù)、過(guò)程、可測(cè)性、質(zhì)量保證等。二.排版1、相對(duì)獨(dú)立的程序塊之間要加空行分隔,在每個(gè)類聲明之后、每個(gè)函數(shù)定義結(jié)束之后都要加空行,變量聲明與執(zhí)行代碼之間加空行分隔(C++代碼中變量聲明與使用合在一起的可不加空行)。2、函數(shù)或過(guò)程的開(kāi)始、類或結(jié)構(gòu)的定義、

2、枚舉的定義及循環(huán)、判斷等語(yǔ)句中以及折行的代碼都要采用縮進(jìn)風(fēng)格。每次縮進(jìn)一個(gè)制表符寬度,或者縮進(jìn)2個(gè)或4個(gè)空格寬度,代碼中應(yīng)統(tǒng)一使用制表符或空格來(lái)進(jìn)行縮進(jìn),不可混用,否則在使用不同的源代碼閱讀工具時(shí)制表符將因?yàn)橛脩粼O(shè)置的不同而擴(kuò)展為不同的寬度,造成顯示混亂。制表符具有占用字節(jié)少、易定位、不容易錯(cuò)位(使用空格縮進(jìn)容易出現(xiàn)多一個(gè)或少一個(gè)空格的現(xiàn)象,看上去不明顯,但卻是錯(cuò)位的)、擴(kuò)展寬度可設(shè)置的優(yōu)點(diǎn),推薦使用。3、較長(zhǎng)的語(yǔ)句(>80字符,或以編輯屏幕可見(jiàn)范圍為準(zhǔn))要分成多行書(shū)寫(折行),長(zhǎng)表達(dá)式要在低優(yōu)先級(jí)操作符處劃分新行,操作符放在新行之首。4

3、、循環(huán)、判斷等語(yǔ)句中若有較長(zhǎng)的表達(dá)式或語(yǔ)句,則要進(jìn)行適應(yīng)的劃分,長(zhǎng)表達(dá)式要在低優(yōu)先級(jí)操作符處劃分新行,操作符放在新行之首。5、若函數(shù)或過(guò)程中的參數(shù)列表較長(zhǎng),則要進(jìn)行適當(dāng)?shù)膭澐帧?、特殊情況下,長(zhǎng)代碼的折行可采用靈活的方式,宗旨是使代碼易讀。7、劃分出的新行要進(jìn)行適當(dāng)?shù)目s進(jìn),以便識(shí)別。將一行代碼劃分為多行時(shí),劃分出的新行的縮進(jìn)量要一致。8、一行代碼只做一件事情,例如只定義一個(gè)變量,或只寫一條語(yǔ)句,這樣的代碼容易閱讀,并且方便于寫注釋。不允許把多個(gè)短語(yǔ)句寫在一行中,特殊代碼(例如宏)除外。9、if、for、do、while、case、swit

4、ch、default、continue、goto、extern、return、typedef等語(yǔ)句自占一行,且if、for、do、while等語(yǔ)句的執(zhí)行語(yǔ)句部分無(wú)論多少都要用大括號(hào)'{'和'}'括起來(lái)。10、C/C++語(yǔ)言是用大括號(hào)'{'和'}'界定一段程序塊的,編寫程序塊時(shí)'{'和'}'應(yīng)各獨(dú)占一行并且位于同一列,同時(shí)與引用它們的語(yǔ)句左對(duì)齊??蘸瘮?shù)或簡(jiǎn)單的內(nèi)聯(lián)函數(shù)除外。在函數(shù)體的開(kāi)始、類的定義、結(jié)構(gòu)的定義、枚舉的定義以及if、for、do、while、switch、case語(yǔ)句中的程序都要采用如上的縮進(jìn)方式。11、標(biāo)識(shí)符和操作符之間加適

5、當(dāng)?shù)目崭?,使代碼錯(cuò)落有致,容易閱讀。一元運(yùn)算符(++、--、求址符&、求值符*、求非值符!、求反值符~、表示正負(fù)的+、-等)緊貼操作數(shù),不加空格;二元運(yùn)算符(算術(shù)運(yùn)算符+、-、*、/、%、位運(yùn)算符&、

6、、^、移位符<<、>>、賦值符+=、-=、*=、/=、%=、&=、

7、=、^=、<<=、>>=、比較符&&、

8、

9、等)與前后的操作數(shù)之間各保留一個(gè)空格;逗號(hào)、分號(hào)緊跟前面的標(biāo)識(shí)符,后面保留一個(gè)空格;類、結(jié)構(gòu)成員訪問(wèn)符.、->等前后不加空格;聲明函數(shù)和單個(gè)變量時(shí),類型修飾符&和*靠近類型名,與函數(shù)名或變量名之間留一個(gè)空格;在一條語(yǔ)句中聲明多個(gè)變量

10、時(shí),類型修飾符&和*靠近變量名,避免閱讀代碼時(shí)產(chǎn)生誤解。12、修改代碼時(shí)排版風(fēng)格應(yīng)與原代碼風(fēng)格保持一致,或者徹底修改整份代碼的風(fēng)格(代碼基線后不提倡這樣大改)。三.注釋1、源程序有效注釋量必須在20%以上。注釋應(yīng)盡量采用C++的注釋風(fēng)格,即使用//注釋。2、在代碼的邏輯含義的層次上進(jìn)行注釋。注釋總是加在程序的需要一個(gè)概括性說(shuō)明或不易理解或易理解錯(cuò)的地方。注釋語(yǔ)言應(yīng)該簡(jiǎn)練、易懂而又含義準(zhǔn)確,避免二義性;所采用的語(yǔ)種首選是中文,如有輸入困難、編譯環(huán)境限制或特殊需求也可采用英文。3、注釋應(yīng)與其描述的代碼相近,對(duì)代碼的注釋應(yīng)放在其上方或右方(針對(duì)

11、單條語(yǔ)句的注釋)相鄰位置,不可放在下方,避免在一行代碼或表達(dá)式中間使用注釋,如放于上方則需與其上面的代碼用空行隔開(kāi)(較緊湊的代碼除外)。4、正確命名變量、結(jié)構(gòu)、函數(shù)、過(guò)程以及合理地組織代碼地結(jié)構(gòu),使代碼成為自注釋的,可減少不必要的注釋。5、數(shù)據(jù)結(jié)構(gòu)聲明(包括數(shù)組、結(jié)構(gòu)、類、枚舉等),如果其命名不是充分自注釋的,必須加以注釋。對(duì)數(shù)據(jù)結(jié)構(gòu)的注釋應(yīng)放在其上方相鄰位置,不可放在下面;對(duì)結(jié)構(gòu)中的每個(gè)域的注釋放在此域的右方。6、在常量名字(或有宏機(jī)制的語(yǔ)言中的宏)聲明后應(yīng)對(duì)該名字作適當(dāng)注釋,注釋說(shuō)明的要點(diǎn)是:被保存值的含義(必須);合法取值的范圍(可

12、選)。7、函數(shù)注釋包括:函數(shù)功能描述(必須,除非函數(shù)非常簡(jiǎn)單明了),輸入、輸出等,復(fù)雜的函數(shù)需要加上變量用途說(shuō)明。8、說(shuō)明文件(.h、.inc、.def、.cfg等)頭部應(yīng)進(jìn)行注釋,注釋內(nèi)容包

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫(huà)的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問(wèn)題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。