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

正文內(nèi)容

某公司程序培訓(xùn)教材(更新版)

  

【正文】 *sum ){ unsigned int count 。示例:下函數(shù)的實(shí)現(xiàn)不太好。 return temp。 return temp。185。示例:如下圖,當(dāng)一個(gè)long型數(shù)(如圖中l(wèi)ong1)在內(nèi)存中的位置正好與內(nèi)存的字邊界對(duì)齊時(shí),CPU存取這個(gè)數(shù)只需訪問(wèn)一次內(nèi)存,而當(dāng)一個(gè)long型數(shù)(如圖中的long2)在內(nèi)存中的位置跨越了字邊界時(shí),CPU存取這個(gè)數(shù)就需要多次訪問(wèn)內(nèi)存,如i960cx訪問(wèn)這樣的數(shù)需讀內(nèi)存三次(一個(gè)BYTE、一個(gè)SHORT、一個(gè)BYTE,由CPU的微代碼執(zhí)行,對(duì)軟件透明),所有對(duì)齊方式下CPU的運(yùn)行效率明顯快多了。unsigned short int exam。typedef unsigned int DWORD。189。unsigned short int exam。這些細(xì)節(jié)對(duì)程序質(zhì)量的保證非常重要。} EXAMPLE。typedef struct EXAMPLE_STRU{ unsigned int valid: 1。} PERSON_ADDRESS。示例:假如認(rèn)為如上的_PERSON結(jié)構(gòu)元素過(guò)多,那么可如下對(duì)之劃分。 unsigned char addr[40]。typedef struct PERSON_TWO_STRU{ unsigned char name[8]。 55:不同結(jié)構(gòu)間的關(guān)系不要過(guò)于復(fù)雜。 /* student39。 /* teacher name */ unisgned char sex。 /* student39。說(shuō)明:設(shè)計(jì)結(jié)構(gòu)時(shí)應(yīng)力爭(zhēng)使結(jié)構(gòu)代表一種現(xiàn)實(shí)事務(wù)的抽象,而不是同時(shí)代表多種。189。 55:防止局部變量與公共變量同名。這種關(guān)系的說(shuō)明可在注釋或文檔中描述。 51:去掉沒(méi)必要的公共變量。應(yīng)分別改為如下。 // 矩形的長(zhǎng)與寬關(guān)系較密切,放在一起。說(shuō)明:便于程序閱讀和查找。 42:避免使用不易理解的數(shù)字,用有意義的標(biāo)識(shí)來(lái)替代。 a amp。 (a amp。int delete_user( BYTE *user_name )。說(shuō)明:對(duì)接口部分的標(biāo)識(shí)符應(yīng)該有更嚴(yán)格限制,防止沖突。示例: Add_User不允許,add_user、AddUser、m_AddUser允許。(即命名規(guī)則中沒(méi)有規(guī)定到的地方才可有個(gè)人命名風(fēng)格)。increment 可縮寫為 inc 。說(shuō)明:注釋語(yǔ)言不統(tǒng)一,影響程序易讀性和外觀排版,出于對(duì)維護(hù)人員的考慮,建議使用中文。 /* if mtp receive a message from links */if (receive_flag)189。189。 break。case CMD_DOWN: ProcessDown()。/* code one ments */program code one/* code two ments */program code two應(yīng)如下書寫/* code one ments */program code one/* code two ments */program code two185。 185。 210:數(shù)據(jù)結(jié)構(gòu)聲明(包括數(shù)組、結(jié)構(gòu)、類、枚舉等),如果其命名不是充分自注釋的,必須加以注釋。例2:repssn_ind = ssn_data[index].repssn_index。說(shuō)明:錯(cuò)誤的注釋不但無(wú)益反而有害。示例:下面這段函數(shù)的注釋比較標(biāo)準(zhǔn),當(dāng)然,并不局限于此格式,但上述信息建議要包含在內(nèi)。示例:下面這段頭文件的頭注釋比較標(biāo)準(zhǔn),當(dāng)然,并不局限于此格式,但上述信息建議要包含在內(nèi)。amp。 // 非操作!與內(nèi)容之間p = amp。if (current_time = MAX_TIME_VALUE) a = b + c。在長(zhǎng)語(yǔ)句中,如果需要加的空格非常多,那么應(yīng)該保持整體清晰,而在局部不加空格。 110:程序塊的分界符(如C/C++語(yǔ)言的大括號(hào)‘{’和‘}’)應(yīng)各獨(dú)占一行并且位于同一列,同時(shí)與引用它們的語(yǔ)句左對(duì)齊。if (pUserCR == NULL) return。示例:如下例子不符合規(guī)范。 i++, j++){ ... // program code }185。 (n7stat_stat_item_valid (stat_item))){ ... // program code}for (i = 0, j = 0。amp。應(yīng)如下書寫if (!valid_ni(ni)){ ... // program code}repssn_ind = ssn_data[index].repssn_index。目 錄1 排版62 注釋113 標(biāo)識(shí)符命名184 可讀性205 變量、結(jié)構(gòu)226 函數(shù)、過(guò)程287 可測(cè)性368 程序效率409 質(zhì)量保證4410 代碼編輯、編譯、審查5011 代碼測(cè)試、維護(hù)5212 宏5359 / 591 排版185。repssn_ni = ssn_data[index].ni。report_or_not_flag = ((taskno MAX_ACT_TASK_NUMBER) amp。amp。 (j second_word_length)。 16:不允許把多個(gè)短語(yǔ)句寫在一行中,即一行只寫一條語(yǔ)句。 示例:如下例子不符合規(guī)范。185。由于留空格所產(chǎn)生的清晰性是相對(duì)的,所以,在已經(jīng)非常清晰的語(yǔ)句中沒(méi)有必要再留空格,如果語(yǔ)句已足夠清晰則括號(hào)內(nèi)側(cè)(即左括號(hào)后面和右括號(hào)前面)不需要加空格,多重括號(hào)間不必加空格,因?yàn)樵贑/C++語(yǔ)言中括號(hào)已經(jīng)是最清晰的標(biāo)志了。位域操作符、^等雙目操作符的前后加空格。 // 內(nèi)容操作*與內(nèi)容之間flag = !isEmpty。if (a = b amp。 22:說(shuō)明性文件(、.inc文件、.def文件、)頭部應(yīng)進(jìn)行注釋,注釋必須列出:版權(quán)說(shuō)明、版本號(hào)、生成日期、作者、內(nèi)容、功能、與其它文件的關(guān)系、修改日志等,頭文件的注釋中還應(yīng)有函數(shù)功能簡(jiǎn)要說(shuō)明。 24:函數(shù)頭部應(yīng)進(jìn)行注釋,列出:函數(shù)的目的/功能、輸入?yún)?shù)、輸出參數(shù)、返回值、調(diào)用關(guān)系(函數(shù)、表)等。 26:注釋的內(nèi)容要清楚、明了,含義準(zhǔn)確,防止注釋二義性。repssn_ni = ssn_data[index].ni。示例:/* active statistic task number */define MAX_ACT_TASK_NUMBER 1000define MAX_ACT_TASK_NUMBER 1000 /* active statistic task number */185。示例:/* The ErrorCode when SCCP translate *//* Global Title failure, as follows */ // 變量作用、含義/* 0 - SUCCESS 1 - GT Table error *//* 2 - GT error Others - no use */ // 變量取值范圍/* only function SCCPTranslate() in *//* this modual can modify it, and other *//* module can visit it through call *//* the function GetGTTransErrorCode() */ // 使用方法BYTE g_GTTranErrorCode。示例:如下例子,顯得代碼過(guò)于緊湊。 break。case CMD_B: ProcessB()。說(shuō)明:除非必要,不應(yīng)在代碼或表達(dá)中間插入注釋,否則容易使代碼可理解性變差。/* if receive_flag is TRUE */if (receive_flag)而如下的注釋則給出了額外有用的信息。 26:注釋應(yīng)考慮程序易讀及外觀排版的因素,使用的語(yǔ)言若是中、英兼有的,建議多使用中文,除非能用非常流利準(zhǔn)確的英文表達(dá)。statistic 可縮寫為 stat 。說(shuō)明:個(gè)人的命名風(fēng)格,在符合所在項(xiàng)目組或產(chǎn)品組的命名規(guī)則的前提下,才可使用。 35:命名規(guī)范必須與所使用的系統(tǒng)風(fēng)格保持一致,并在同一項(xiàng)目中統(tǒng)一,比如采用UNIX的全小寫加下劃線的風(fēng)格或大小寫混排的方式,不要使用大小寫與下劃線混排的方式,用作特殊標(biāo)識(shí)如標(biāo)識(shí)成員變量或全局變量的m_和g_,其后加上大小寫混排的方式是允許的。 32:在同一軟件產(chǎn)品內(nèi),應(yīng)規(guī)劃好接口部分標(biāo)識(shí)符(變量、結(jié)構(gòu)、函數(shù)及常量)的命名,防止編譯、鏈接時(shí)產(chǎn)生沖突。int add_user( BYTE *user_name )。amp。amp。185。 41:源程序中關(guān)系較為緊密的代碼應(yīng)盡可能相鄰。 = 5。* ++ stat_poi += 1。 ”5 變量、結(jié)構(gòu)185。說(shuō)明:明確過(guò)程操作變量的關(guān)系后,將有利于程序的進(jìn)一步優(yōu)化、單元測(cè)試、系統(tǒng)聯(lián)調(diào)以及代碼維護(hù)等。185。說(shuō)明:降低公共變量耦合度。 53:結(jié)構(gòu)的功能要單一,是針對(duì)一種事務(wù)的抽象。s age */ unsigned char sex。typedef struct TEACHER_STRU{ unsigned char name[8]。s age */ unsigned char sex。189。} PERSON_ONE。 unsigned char sex。說(shuō)明:增加結(jié)構(gòu)的可理解性、可操作性和可維護(hù)性。 unsigned char tel。示例:如下結(jié)構(gòu)中的位域排列,將占較大空間,可讀性也稍差。 PERSON person 。說(shuō)明:如在C語(yǔ)言中,static局部變量將在內(nèi)存“數(shù)據(jù)區(qū)”中生成,而非static局部變量將在“堆?!敝猩伞har chr。 513:合理地設(shè)計(jì)數(shù)據(jù)并使用自定義數(shù)據(jù)類型,避免數(shù)據(jù)間進(jìn)行不必要的類型轉(zhuǎn)換。typedef unsigned short WORD。示例:假如有如下短整數(shù)及結(jié)構(gòu)。內(nèi)存: 0 1 2 ... (從低到高,以字節(jié)為單位)exam exam高字節(jié) exam低字節(jié)內(nèi)存: 7 bit 6 bit 5 bit ... (字節(jié)的各“位”)EXAM_BIT A1 A2 A3說(shuō)明:在對(duì)齊方式下,CPU的運(yùn)行效率要快得多。說(shuō)明:編寫C/C++語(yǔ)言的可重入函數(shù)時(shí),不應(yīng)使用static局部變量,否則必須經(jīng)過(guò)特殊處理,才能使函數(shù)具有可重入性。 // (**) temp = Square_Exam( )。若申請(qǐng)到信號(hào),則可繼續(xù)執(zhí)行,但其 // 它進(jìn)程必須等待本進(jìn)程釋放信號(hào)量后,才能再使 // 用本信號(hào)。對(duì)必須改變的參數(shù),最好先用局部變量代之,最后再將該局部變量的內(nèi)容賦給該參數(shù)。 }}若改為如下,則更好些。}189。示例:如下語(yǔ)句的功能不很明顯。 65:不要設(shè)計(jì)多用途面面俱到的函數(shù)。unsigned int integer_sum( unsigned int base ){ unsigned int index。}189。 68:避免設(shè)計(jì)多參數(shù)函數(shù),不使用的參數(shù)從接口中去掉。示例:如下函數(shù)構(gòu)造不太合理。189。如果是OOP方法,可以只有動(dòng)詞(名詞是對(duì)象本身)。說(shuō)明:函數(shù)的每種出錯(cuò)返回值的意義要清晰、明了、準(zhǔn)確,防止使用者誤用、理解錯(cuò)誤或忽視錯(cuò)誤返回碼。189。使用隨機(jī)內(nèi)聚函數(shù),常常容易出現(xiàn)在一種應(yīng)用場(chǎng)合需要改進(jìn)此函數(shù),而另一種應(yīng)用場(chǎng)合又不允許這種改進(jìn),從而陷入困境。 /* 初始化“點(diǎn)”的坐標(biāo) */}矩形的長(zhǎng)、寬與點(diǎn)的坐標(biāo)基本沒(méi)有任何關(guān)系,故以上函數(shù)是隨機(jī)內(nèi)聚。189。函數(shù)較合理的扇出(調(diào)度函數(shù)除外)通常是35。 624:減少函數(shù)本身或函數(shù)間的遞歸調(diào)用。 626:改進(jìn)模塊中函數(shù)的結(jié)構(gòu),降低函數(shù)間的耦合度,并提高函數(shù)的獨(dú)立性以及代碼可讀性、效率和可維護(hù)性。(8)提高函數(shù)內(nèi)聚。189。 說(shuō)明:這樣可以增加編程效率和程序的可讀性。185。 75:使用斷言來(lái)發(fā)現(xiàn)軟件問(wèn)題,提高代碼可測(cè)性。 else // 否則報(bào)告 exam_assert( __FILE__, __LINE__ ) else // 若不使用斷言測(cè)試define EXAM_ASSERT(condition) NULL endif /* end of ASSERT */185。說(shuō)明:為復(fù)雜的斷言加注釋,可澄清斷言含義并減少不必要的誤用。但當(dāng)前的版本中僅實(shí)現(xiàn)了“無(wú)連接”業(yè)務(wù),且在此版本的正式發(fā)行版中,用戶(上層模塊)不應(yīng)產(chǎn)生“連接”業(yè)務(wù)的請(qǐng)求,那么在測(cè)試時(shí)可用斷言檢查用戶是否使用“連接”業(yè)務(wù)。說(shuō)明:程序運(yùn)行時(shí)所需的軟硬件環(huán)境及配置要求,不能用斷言來(lái)檢查,而必須由一段專門代碼處理。說(shuō)明:加快軟件運(yùn)行速度。189。189。 ... // 其它合法消息處理 default: ... // 消息出錯(cuò)處理 ASSERT_REPORT( FALSE )。說(shuō)明:不能一味地追求代碼效率,而對(duì)軟件的正確
點(diǎn)擊復(fù)制文檔內(nèi)容
數(shù)學(xué)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1