忘了啥時候記的筆記了 @ 目錄 宏定義 1.不帶參數的宏定義: 2.帶參數的宏定義: C語言宏定義技巧(常用宏定義) 1,防止一個頭文件被重復包含 ...
在工程規模較小,不是很復雜,與硬件結合緊密,要求移植性的時候,可采用宏定義簡化編程,增強程序可讀性。 當宏作為常量使用時,C程序員習慣在名字中只使用大寫字母。但是並沒有如何將用於其他目的的宏大寫的統一做法。由於宏 特別是帶參數的宏 可能是程序中錯誤的來源,所以一些程序員更喜歡使用大寫字母來引起注意。 簡單宏定義 無參宏的宏名后不帶參數,其定義的一般形式為: define 標識符字符串 不帶參數的宏 ...
2020-07-06 14:18 0 630 推薦指數:
忘了啥時候記的筆記了 @ 目錄 宏定義 1.不帶參數的宏定義: 2.帶參數的宏定義: C語言宏定義技巧(常用宏定義) 1,防止一個頭文件被重復包含 ...
要寫好C語言,漂亮的宏定義是非常重要的。宏定義可以幫助我們防止出錯,提高代碼的可移植性和可讀性等。 在軟件開發過程中,經常有一些常用或者通用的功能或者代碼段,這些功能既可以寫成函數,也可以封裝成為宏定義。那么究竟是用函數好,還是宏定義好?這就要求我們對二者進行合理的取舍。 我們來看一個 ...
...
1. 利用define來定義 數值宏常量 #define 宏定義是個演技非常高超的替身演員,但也會經常耍大牌的,所以我們用它要慎之又慎。它可以出現在代碼的任何地方,從本行宏定義開始,以后的代碼就就都認識這個宏了;也可以把任何東西定義成宏。因為編譯器會在預編譯的時候用真身替換替身,而在 ...
使用條件宏進行條件編譯 譬如,對於同一份代碼,我想編譯出兩個不同的版本,在其中一個版本中去掉某一部分功能, 這時可以通過條件宏判斷是否編譯,例: 如果不使用條件宏進行控制,想編譯兩個不同版本的程序,就需要保存兩份源代碼。 條件編譯的語法和if else語法類似 ...
注意區分宏定義函數和普通函數定義的區別: 宏定義中表達式的參數要加括號,否則可能會出錯(運算的優先級): 同理計算的優先級問題還可以出現的main()函數中表達式中: 所以一般是不建議利用宏定義來表示太多的計算表達式,很可能會出現表達式計算錯誤。 ...
這樣定義后,結構體就可以這樣賦值 ...
宏是一種預處理指令,它提供了一種機制,可以用來替換源代碼中的字符串,宏是用“#define"語句定義的,下面是一個宏定義的例子: #define VERSION—STAMP "1.02"上例中所定義的這種形式的宏通常被稱為標識符。在上例中,標識符VERSION_STAMP即代表 ...