宏定義,把重要的數據標上名字

宏定義,把重要的數據標上名字

宏定義是預處理命令的一種,它允許用一個標識符來表示一個字符串。

宏定義的一般形式為:

#define 宏名 字符串

下面給個例子:

#include #define N 100int main(){ int sum = 20 + N; printf("%d\n", sum); return 0;}

運行結果:

120

該示例中的語句int sum = 20 + N;,N被100代替了。

#define N 100就是宏定義,N為宏名,100是宏的內容。在編譯預處理時,對程序中所有出現的“宏名”,都用宏定義中的字符串去代換,這稱為“宏代換”或“宏展開”。

#表示這是一條預處理命令,所有的預處理命令都以#開頭。define是預處理命令。宏名是標識符的一種,命名規則和標識符相同。字符串可以是常數、表達式等。

這裡需要注意假如是表達式的時候大家要注意運算符的優先級。由於宏會在編譯的時候替換數據。所以假如

#define N 1+2

任何在程序裡有一個這樣的語句:N×2,會變成1+2×2.

所以大家在替換的時候多注意運算符的優先級,多用括號。

宏定義雖然也可表示數據類型, 但畢竟是作字符代換。在使用時要分外小心,以避出錯。

到這裡文章就結束了,如果有想要學習C語言呢,或者再學習C語言的可以,私聊我發送“C語言”雖然c語言簡單,但是一些更加重要的知識是教科書上沒有的。需要學習者自己嘗試。所以有對於學習者來說,有個好的交流環境,學習資料是特別重要的。我會給大家提供一些幫助、建議,但也希望大家多去實踐自己獲取學習到的知識。

如果覺得我文章還可以的可以關注,轉發,收藏,評論,謝謝大家。


分享到:


相關文章: