C語言程式設計規範(華為軟體精英挑戰賽)

2021-07-28 08:39:52 字數 1421 閱讀 2534

參加華為軟體精英挑戰賽,複習了下基本的c語言程式設計規範,並做了小結!

標頭檔案禁止包含用不到的標頭檔案

放置介面宣告、不適合放實現

禁止在標頭檔案中定義變數:可能出現重定義錯誤

標頭檔案應向穩定方向包含:乙個標頭檔案的變化,會導致所有包含該標頭檔案**的重新編譯

禁止標頭檔案迴圈依賴: 減少「依賴深度過深的錯誤」

總是編寫內部的#ifndef保護符:#ifndef a_h_ ...標頭檔案應當自包含禁止extern "c"中包含標頭檔案!

每個c檔案應有乙個同名h檔案

設計文件寫出來的時候就過時了!標頭檔案才是王道!

函式程式設計規範

語法規範

c語言常見問題

棧管理

強制型別轉換(用來欺騙編譯器)

整數溢位

位元組對齊(取自身長度和對齊長度的最小值)

位元組序

編譯器眼中的指標

[gridftp02@gf02 ~]$ cat pointer.c 

#include

int main(int argc, char *argv)

[gridftp02@gf02 ~]$ gcc pointer.c

[gridftp02@gf02 ~]$ ./a.out

name address:0x50ec0a40

name address:0x50ec0a40

name address:0x50ec0a40

name address:0x50ec0a41

name address:0x50ec0a45

name address:5

**********====

name address:0x400760

name address:0x400760

name address:0x50ec0a38

name address:0x400761

name address:0x50ec0a40

name address:8

相關

- 《**簡潔之道》

- 《重構》

-good code is not bad code!

- **檢視、單元測試、整合測試、系統測試

華為軟體精英挑戰賽總結

我們的成員分工 1 負責除錯 糾錯和上傳 2 負責查詢演算法思路 3 負責查詢演算法並且寫 框架 步驟 1 通過各個同學的專長進行分工,如上所示,確定一有思路就開小組會議討論。2 3號同學在網上查詢到乙個最基本的直連程式,該程式有錯誤,需要修改。3 1號同學同過3號同學給的直連 進行除錯和改錯,與此...

華為軟體精英挑戰賽總結

賽題連線 總體來看,是乙個np hard問題。我們隊的解題思路是 1 隨機選取伺服器的位置,用遺傳演算法尋優,那麼遺傳演算法中的判斷運算元就是第二步 2 在伺服器位置固定的情況下,利用最小費用最大流演算法計算總費用。該演算法思路詳見 其中求帶負權有向圖最短路,用到了fpga演算法,其實就是b ell...

2019華為軟體精英挑戰賽總結

華為軟挑切切實實的做了兩周,說實話這也是第一次打這種 比賽,最終的成績略顯遺憾,西北賽區的58名,因為今年沒有64強這一說法,所以沒有任何獎勵,希望明年有再來一次的決心勇氣,畢竟竹籃打水一場空太讓人不爽了。成績附圖如下,第58名 我是起名廢團隊 今年的賽題首先讓人窒息的就是長達29頁的題目,光是讀題...