1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | // 巨集定義在函式之"後", 程式碼原本的樣子(前處理器處理前) void PrintSum(int x, int y) { int sum =0; #ifdef DO_IT sum=x+y; #endif printf("%d\n",sum); } #define DO_IT // 編譯器看到的程式碼(還沒開始編譯), 前處理已經處理完 void PrintSum(int x, int y) { int sum =0; printf("%d\n",sum); } // 巨集定義在函式之"前", 程式碼原本的樣子(前處理器處理前) #define DO_IT void PrintSum(int x, int y) { int sum =0; #ifdef DO_IT sum=x+y; #endif printf("%d\n",sum); } // 編譯器看到的程式碼(還沒開始編譯), 前處理已經處理完 void PrintSum(int x, int y) { int sum =0; sum=x+y; printf("%d\n",sum); } |
Direct link: https://paste.plurk.com/show/304128