C語言進階-第8~10講:預處理

知識點總結:

       預處理 以"#"開頭的命令
       (1)宏定義 #define ...
       (2)文件包含 #include ...
       (3)條件編譯 #indef ...


       宏定義                  #define 標識符 字符串
       帶參數的宏定義  #define 宏名(參數表) 字符串
       謹慎帶參數的宏定義的副作用,原樣替換,整體替換時要給參數加括號


       文件包含 ?多文件程序組織
       源文件與頭文件的分離
       一般頭文件的幾類內容:

                                                對自定義類型的聲明
                                                函數聲明
                                                宏定義
                                                全局變量定義
                                                外部變量聲明
                                                或包含其他頭文件
       include命令的兩種形式:
                                                #include <文件名> 文件在系統目錄中
                                                #include "文件名" 文件默認在用戶的當前目錄中
       GCC編譯器中的頭文件和庫函數:

            


         條件編譯 :根據需要只編譯程序中的某一部分
         常用於對程序的調試中 

         條件編譯的常用形式:

        

        

         文件包含中的一個問題(重複包含):
         文件包含保護--條件編譯的另一用法(三行)

        


心得:

        預處理—>文件包含—>頭文件—>宏定義—>條件編譯

        其中文件包含中包含源文件和頭文件,頭文件又含系統目錄中的頭文件和自定義在當前目錄下的頭文件

        要將源文件和頭文件分離,拿什麼樣的內容應該放在頭文件中呢?

        宏定義可以是常見的定義符號常量也可以帶參數進行宏定義,特點是原樣替換

        條件編譯常用在程序調試中和文件保護中,在自定義的頭文件中條件編譯避免文件重複包含

發佈了94 篇原創文章 · 獲贊 44 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章