目錄:
一.不帶參數的宏
二.帶參數宏
一.不帶參數的宏
? ??不帶參數的宏是指用#define指令定義的簡單文本替換規則,它沒有參數列表,直接替換標識符為相應的文本
? ? 其一般形式為:
#define? ? 宏名? ??文本
? ?例如:
#define pi 3.14
? ?這個代碼中當我們使用pi這個宏名的時候,我們直接把宏名替換為3.14即可
二.帶參數的宏
? ?帶參數的宏(也稱為參數化宏)允許在宏定義中使用參數,類似于函數調用,但本質上是文本替換
? ?其一般形式為:
#define? ? 宏名(參數1,參數2,......)? ? 替換文本
? ?例如:
#define pi(x,y) ((x)+(y))
? ?在這個代碼中當我們使用pi(x,y)這個參數宏的時候,我們直接可以把參數宏這個整體看作為替換文本即可,即((x)+(y))