欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: [求助][原創]預處理命令問題 [打印本頁]

作者: mateo    時間: 2009-10-11 12:19
標題: [求助][原創]預處理命令問題

#ifdef 標識符

   程序段1

#else

   程序段2

#endif

      書上說命令的功能是:如果指定的標識符已被定義,則程序段1參加編譯并產生有效代碼,否則程序段子參加編譯。

      舉例:

       #define CPU 8051

       #ifdef  CPU

       #define FREQ 6

       #else

       #define FREQ 12

       #endif

       書上說這后面的源程序不作任何修改就可以適用于兩種時鐘頻率的單片機系統。

       我的問題是為什么只定義了一個#define CPU 8051,就可以適用二兩種時鐘頻率,即CPU被定義了,那么它不執行了#define FREQ 6這段代碼,而未執行#define FREQ 12代碼嗎?小弟還是搞不懂,望各位前輩指點指點


作者: dongmaowan    時間: 2010-1-27 21:47

一個系統有兩種工作頻率時,而你又還沒確定系統要哪種時鐘工作時,這時這種定義就非常有用了,當系統定義那種時鐘時你就定義一下告訴編譯器那些程序要編譯,那些不要編譯,只有被編譯的程序才被寫到ROM里去,這提高了程序的通用性和減小程序代碼!






歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1