![宏定義,把重要的數據標上名字](http://p2.ttnews.xyz/loading.gif)
宏定義是預處理命令的一種,它允許用一個標識符來表示一個字符串。
宏定義的一般形式為:
#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語言簡單,但是一些更加重要的知識是教科書上沒有的。需要學習者自己嘗試。所以有對於學習者來說,有個好的交流環境,學習資料是特別重要的。我會給大家提供一些幫助、建議,但也希望大家多去實踐自己獲取學習到的知識。
如果覺得我文章還可以的可以關注,轉發,收藏,評論,謝謝大家。
閱讀更多 明江帶你學習編程 的文章