免費論壇 繁體 | 簡體
Sclub交友聊天~加入聊天室當版主
分享
返回列表 回復 發帖

c語言的基本語法一,前置處理的基本觀念

http://blog.udn.com/cchahacaptain/2257789







#if 0



....ooxx



#endif



上述#if..#endif是前置處理器(pre-processor)之ㄧ,它是在compile(編譯或語言轉換)【之前】執行的動作,而該語法是什麼意思呢?就是【ooxx那些東西當作沒看到的意思】,所以ooxx就算亂寫,也不會有任何問題,所以有時候需要寫一些臨時性的語句,甚至是只有寫一半還不會動的程式,就會使用這樣的方法把它遮起來。所以



#if 1



....ooxx



#endif



上面的0->1,會發生什麼事,就應該知道了。



【前置處理】是什麼意思呢?簡單的說,就是大家寫的*.c,*.cpp,*.h等的程式檔案,在送去【轉換、編譯】前,先整理整理,把該替換掉、該移除的先做一做,所以前置處理後的結果還是文字檔案,也還是原來的程式檔,只是依照程式設計者的要求,做一些【文書處理】,如上面的【#if 0 .... #endif】,這樣的比喻,應該明白了吧。所以



#define MY_VALUE 100



......



int var = MY_VALUE;



其中【#define MY_VALUE 100】的意思是:【請用文書處理的方式,把MY_VALUE這個符號替換成100這個數字】。



所以上述程式,在做【前置處理】後,或是【文書處理】後,會變成什麼樣,應該就明白了。


返回列表