我是新來編程,希望有人能幫助我這個:
爲什麼它給出了一個輸出:5。
這裏是代碼片段:
#include <stdio.h>
#define max 5;
int main(){
int i=0;
i = max+1;
printf("\n%d",i);
return 0;
}
我是新來編程,希望有人能幫助我這個:
爲什麼它給出了一個輸出:5。
這裏是代碼片段:
#include <stdio.h>
#define max 5;
int main(){
int i=0;
i = max+1;
printf("\n%d",i);
return 0;
}
的關鍵的一點是
#define max 5;
當由預處理器取代,這將成爲
i = 5; +1;
其中分配5到可變i
(表達+1;
沒有任何影響)。
你需要寫
#define max 5
因爲你有一個分號的宏定義在x =
去掉 ';'在5號後面,你很好走。 – Bart
是的宏是邪惡的。你可以這樣寫:'const int max = 5;'。這更安全。 – QuasarDonkey