C語言中多次包含同一個頭文件的結果和解決方案


問題來源:

加入你有一個C源文件,它包含了多個頭文件,比如頭文件A和頭文件B,而頭文件B又包含頭文件A

 

結果:

該源文件包含了頭文件A兩次,這時,編譯時會報大量的重復定義錯誤。

 

解決方案:

使用宏定義

在自定義的頭文件開頭寫上:

#ifndef_HEADFILENAME_H

#define_HEADFILENAME_H

 

后文件結尾寫上

#endif

 

語句“#ifndef_HEADFILENAME_H"

也是宏定義的一種,意為"if not defined headfilename.h",就是說

如果沒有定義文件名為 headfilename.h的頭文件,就會執行該語句和#endif直接的代碼

 

如果定義了,則不會執行該語句和#endif直接的代碼

注:#ifndef_HEADFILENAME_H必須和#endif配合使用

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM