熱心網友

編譯的時候,編譯程序會在編譯之前把宏定義自動替換為你定義的東西,比如數值,代碼段,甚至函數,這種替換只是純文本的替換,有些副作用要注意最簡單的例子:比如下面把圓周率定義為一個宏#define PI 3.1416你在用到圓周率的地方就可以用PI代替數值輸入了,這樣你要把用到圓周率精度提高到3.141593的時候就不用去每個地方查找替換了,只要把宏定義改一下就好了#define PI 3.141593再比如#define MAX(a,b) (ab?a:b)你可以在程序里這樣寫:maxmum=MAX(num1,num2);相當于max=(num1num2?num1:num2);你還可以把更復雜的代碼定義為宏,就可以節省大量重復代碼了

熱心網友

我也不知道,不好意思了,不能給你解決問題是我最大的失誤.我會努力的,以后一定不會再發生這樣的事了.