freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

【經(jīng)管勵志】編程規(guī)范和范例-wenkub.com

2025-04-20 12:08 本頁面
   

【正文】 故除非為某些算法或功能的實現(xiàn)方便,應(yīng)減少沒必要的遞歸調(diào)用。 較良好的軟件結(jié)構(gòu)通常是頂層函數(shù)的扇出較高,中層函數(shù)的扇出較少,而底層函數(shù)則扇入到公共模塊中。扇出太小,可把下級函數(shù)進(jìn)一步分解多個函數(shù),或合并到上級函數(shù)中。 說明:扇出是指一個函數(shù)直接調(diào)用(控制)其它函數(shù)的數(shù)目,而扇入是指有多少上級函數(shù)調(diào)用它。 說明:模塊中函數(shù)劃分的過多,一般會使函數(shù)間的接口變得復(fù)雜。621:如果多段代碼重復(fù)做同一件事情,那么在函數(shù)的劃分上可能存在問題。 = 0。 /* 初始化矩形的長與寬 */ = 10。若這些代碼關(guān)聯(lián)較大并且是完成一個功能的,那么這種構(gòu)造是合理的,否則這種構(gòu)造將產(chǎn)生隨機(jī)內(nèi)聚的函數(shù)。隨機(jī)內(nèi)聚是指將沒有關(guān)聯(lián)或關(guān)聯(lián)很弱的語句放到同一個函數(shù)或過程中。 說明:程序中的垃圾代碼不僅占用額外的空間,而且還常常影響程序的功能與性能,很可能給程序的測試、維護(hù)等造成不必要的麻煩。618:在調(diào)用函數(shù)填寫參數(shù)時,應(yīng)盡量減少沒有必要的默認(rèn)數(shù)據(jù)類型轉(zhuǎn)換或強(qiáng)制數(shù)據(jù)類型轉(zhuǎn)換。616:除非必要,最好不要把與函數(shù)返回值類型不同的變量,以編譯系統(tǒng)默認(rèn)的轉(zhuǎn)換方式或強(qiáng)制的轉(zhuǎn)換方式作為返回值返回。 說明:避免用含義不清的動詞如 process、 handle等為函數(shù)命名,因為這些動詞并沒有說明要具體做什么。 void print_record( unsigned int rec_ind ) 。 189。 說明:函數(shù)的輸入主要有兩種:一種是參數(shù)輸入;另一種是全局變量、數(shù)據(jù)文件的輸入,即非參數(shù)輸入。 } 189。 } else { return (a b)??刂茀?shù)是指改變函數(shù)功能行為的參數(shù),即函數(shù)要根據(jù)此參數(shù)來決定具體怎樣工作。 189。過程 Print_Msg的實現(xiàn)依賴于Input_Msg的具體實現(xiàn),這種程序 是非結(jié)構(gòu)化的,難以維護(hù)、修改。 說明:此條為函數(shù)獨立性的基本要求。 index++) { sum += index。 // 注意,是 static類型的。在 C/C++語言中,函數(shù)的 static局部變量是函數(shù)的內(nèi)部存儲器,有可能使函數(shù)的功能不可預(yù)測,然而,當(dāng)某函數(shù)的返回值為指針類型時,則必須是 STATIC的局部 變量的地址作為返回值,若為 AUTO類,則返回為錯針。 189。 define MAX (a, b) (((a) (b)) ? (a) : (b)) value = MAX (a, b)。 改為如下就很清晰了。64:為簡單功能編寫函數(shù)。 說明:不包括注釋和空格行 。 count ++) { sum_temp += data[count]。 int sum_temp。 count++) { *sum += data[count]。 void sum_data( unsigned int num, int *data, int *sum ) { unsigned int count。61:防止將函數(shù)的參數(shù)作為工作變量。 } 185。 // 給 Exam賦值并計算其平方過程中(即正在使用此 temp = Square_Exam( )。 } 此函數(shù)若被多個進(jìn)程調(diào)用的話,其結(jié)果可能是未知的,因為當(dāng)( **)語句剛執(zhí)行完后,另外一個使用本函數(shù)的進(jìn)程可能正好被激活,那么當(dāng)新激活的進(jìn)程執(zhí)行到此函數(shù)時,將使Exam賦與另一個不同的 para值,所以當(dāng)控制重新回到“ temp = Square_Exam( )”后,計算出的 temp很可能不是預(yù)想中的結(jié)果。 unsigned int example( int para ) { unsigned int temp。64:編寫可重入函數(shù)時,若使用全局變量,則應(yīng)通過關(guān)中斷、信號量(即 P、 V操作)等手段對其加以保護(hù)。 185。 1 8 16 24 32 | long1 | long1 | long1 | long1 | | | | | long2 | | long2 | long2 | long2 | | | .... 軟件編程規(guī)范總則 6 函數(shù)、過程 僅供內(nèi)部使用 29 6 函數(shù)、過程 185。 如下是 Intel CPU生成短整數(shù)及位域的方式。 typedef struct EXAM_BIT_STRU { /* Intel 68360 */ unsigned int A1: 1。515:當(dāng)聲明用于分布式環(huán)境或不同 CPU間通信環(huán)境的數(shù)據(jù)結(jié)構(gòu)時,必須考慮機(jī)器的字節(jié)順序、使用的位域及字節(jié)對齊等問題 。 下面的聲明可使數(shù)據(jù)類型具有更豐富的含義。 下面的聲明可使數(shù)據(jù)類型的使用簡潔、明了。514:對自定義數(shù)據(jù)類型進(jìn)行恰當(dāng)命名,使它成為自描述性的,以提高代碼可讀性。512:盡量減少沒有必要的數(shù)據(jù)類型默認(rèn)轉(zhuǎn)換與強(qiáng)制轉(zhuǎn)換。 chr = 1。511:對編譯系統(tǒng)默認(rèn)的數(shù)據(jù)類型轉(zhuǎn)換,也要有充分的認(rèn)識。 189。 189。 189。 typedef struct EXAMPLE_STRU { unsigned int valid: 1。 PERSON person。57:仔細(xì)設(shè)計結(jié)構(gòu)中元素的布局與排列順序,使結(jié)構(gòu)容易理解、節(jié)省占用空間,并減少引起誤用現(xiàn)象。 typedef struct PERSON_STRU { PERSON_BASE_INFO person_base。 typedef struct PERSON_ADDRESS_STRU { unsigned char addr[40]。 typedef struct PERSON_BASE_INFO_STRU { unsigned char name[8]。56:結(jié)構(gòu)中元素的個數(shù)應(yīng)適中。 unsigned char city[15]。 typedef struct PERSON_STRU { unsigned char name[8]。 unsigned char age。 unsigned char sex。 說明:若兩個結(jié)構(gòu)間關(guān)系較復(fù)雜、密切,那么應(yīng)合為一個結(jié)構(gòu)。54:不要設(shè)計面面俱到、非常靈活的數(shù)據(jù)結(jié)構(gòu)。s sex, as follows */ /* 0 FEMALE。s name */ unsigned char age。 /* teacher sex, as follows */ /* 0 FEMALE。 /* his teacher sex */ } STUDENT。s sex, as follows */ /* 0 FEMALE。s name */ unsigned char age。結(jié)構(gòu)中的各元素應(yīng)代表同一事務(wù)的不同側(cè)面,而不應(yīng)把描述沒有關(guān)系或關(guān)系很弱的不同 事務(wù)的元素放到同一結(jié)構(gòu)中。 // 寄存器變量 _AX = 0x4000。52:使用嚴(yán)格形式定義的、可移植的數(shù)據(jù)類型,盡量不要使用與具體硬件或軟件環(huán)境關(guān)系密切的變量。 軟件編程規(guī)范總則 5 變量、結(jié)構(gòu) 僅供內(nèi)部使 用 23 189。 說明:若使用了較好的命名規(guī)則,那么此問題可自動消除。54:當(dāng)向公共變量傳遞數(shù)據(jù)時,要十分小心,防止賦與不合理的值或越界等現(xiàn)象發(fā)生。 示例:在源文件中,可按如下注釋形式說明。 185。 說明:公共變量是增大模塊間耦合的原因之一,故應(yīng)減少沒必要的公共變量以降低模塊間的耦合度。 *stat_poi += 1。 *stat_poi += 1。 示例:如下表達(dá)式,考慮不周就可能出問題,也較難理解。 char_poi = str。 若按如下形式書寫,可能更清晰一些。 示例:以下代碼布局不太合理。 define TRUNK_IDLE 0 define TRUNK_BUSY 1 if (Trunk[index].trunk_state == TRUNK_IDLE) { Trunk[index].trunk_state = TRUNK_BUSY。涉及 物理狀態(tài)或者含有物理意義的常量,不應(yīng)直接使用數(shù)字,必須用有意義的枚舉或宏來代替。 d = a | ( b c) amp。 c = (a | b) amp。 c a | b c amp。 c)) (2) if ((a | b) (c amp。 說明:防止閱讀程序時產(chǎn)生誤解,防止因默認(rèn)的優(yōu)先級與設(shè)計思想不符而導(dǎo)致程序出錯。 189。 add / remove begin / end create / destroy insert / delete first / last get / release increment / decrement put / get add / delete lock / unlock open / close min / max old / new start / stop next / previous source / target show / hide send / receive source / destination cut / paste up / down 示例: int min_sum。如可規(guī)定接口部分的變量與常量之前加 上“模塊”標(biāo)識等。 應(yīng)改為有意義的單詞命名 define _EXAMPLE_UNIT_TEST_ define _EXAMPLE_ASSERT_TEST_ void set_udt_msg_sls( BYTE sls )。 189。 int liv_Width 其變量名解釋如下: l 局部變量( Local) (其它: g 全局變量( Global) ...) i 數(shù)據(jù)類型( Interger) v 變量( Variable) (其它: c 常量( Const) ...) Width 變量含義 軟件編程規(guī)范總則 3 標(biāo)志符命名 僅供內(nèi)部使用 18 這樣可 以防止局部變量與全局變量重名。 185。 185。 message 可縮寫為 msg 。 temp 可縮寫為 tmp 。 軟件編程規(guī)范總則 3 標(biāo)志符命名 僅供內(nèi)部使用 17 3 標(biāo)識符命名 185。25:注釋格式盡量統(tǒng)一,建議使用“ /* ?? */”。24:在程序塊的結(jié)束行右方加注釋標(biāo)記,以表明某程序塊的結(jié)束。 說明:注釋的目的是解釋代碼的目的、功能和采用的方法,提供代碼以外的信息,幫助讀者理解代碼,防止沒必要的重復(fù)注釋信息。22:通過對函數(shù)或過程、變量、結(jié)構(gòu)等正確的命名以及合理地組織代碼的結(jié)構(gòu),使代碼成為自注釋的。 ... 189。 case CMD_C: ProcessC()。 // now jump into case CMD_A } case CMD_A: ProcessA()。 break。 說明:這樣比較清楚程序編寫者的意圖,有效防止無故遺漏 break語句。214:對變量的定義和分支語句(條件分支、循環(huán)語句等)必須編寫注釋。 void example_fun( void ) { /* code one ments */ CodeBlock One /* code two ments */ CodeBlock Two } 185。
點擊復(fù)制文檔內(nèi)容
規(guī)章制度相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1