#define max 1000
int mian(){
? ? printf("%d\n",max); //打印結果為:1000
? ? return 0;
}
具體細節(jié)看第一章·第一節(jié) 常量
大體上和函數(shù)相似,但是又獨特的細節(jié)
例1:
#define Add(x,y) ((x)+(y))
int main(){
? ? printf("%d\n",Add(3,4));//打印 7
? ? return 0;
}
例2:
#define Add(x,y) ((x)+(y))
int main(){
printf("%d\n",4*Add(3,4));//打印 28
return 0;
}
在第一章時候不才已經(jīng)說過在 #define 定義標識符常量時候是把常量替換的,不是以變量的形式來賦值的,在定義宏的時候也是一樣,在計算4*Add(3,4) 時,Add(3,4)中也進行替換的。在計算機內(nèi)部計算是:4*((3)+(4)) 。
例3:
#define Add(x,y) x+y
int main(){
printf("%d\n",4*Add(3,4));
return 0;
}
在上面的解析中這題小伙伴們不妨大展身手的試一下(答案與講解已經(jīng)在評論區(qū)置頂了)
深度解析在第三章中:預處理指令詳解
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧