宏定義

宏不能用來計算,宏只能簡單代替,不能做計算,不能做計算,不能做計算,重要的事情說三遍。


以下程序

#include<stdio.h>
#define SUB(a) (a)-(a)
main(){
int a=2,b=3,c=5,d;
d=SUB(a+b)*c;
printf("%d\n",d);
}

運行後的結果是:


d=SUB(a+b)*c=SUB(2+3)*5=(2+3)-(2+3)*5=5-25=-20


以下程序


# include<stdio.h>
#define f(x) x*x*x
main(){
int a=3,s,t;
s=f(a+1);t=f((a+1));
printf("%d,%d\n",s,t);
}
結果是:10,64

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章