linux下C語言編程解決warning : incompatible implicit declaration of built-in function問題


https://blog.csdn.net/Tang_shui/article/details/81666368

 在C語言編程過程中,偶遇如下warning,雖然並不影響最終的編譯結果,但是看着warning也很無語,畢竟強迫症。

 

 

 

       我們可以發現被警告沒有聲明的都是常用的C庫函數(這也是它為什么還能編譯成功的原因),這種情況,是因為我們沒有寫函數對應的頭文件的原因。 那么如何查詢某個函數對應的頭文件呢?

 

       在linux下,我們可以方便的使用命令

 

       man  函數名    來查詢該函數需要哪個頭文件來預編譯。

 

       如

 

       man strlen

 

 

 

能夠得到:

 

 

 

此時,我們再去C源碼中添加 

 

#include <string.h>,那么就不會對strlen報warning啦,其他函數類比參照此過程。退出這個查詢界面可以使用  shift+: 輸入q(quit的縮寫),然后便可以退出此界面了。

————————————————

版權聲明:本文為CSDN博主「Tang_shui」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。

原文鏈接:https://blog.csdn.net/Tang_shui/article/details/81666368

 在C語言編程過程中,偶遇如下warning,雖然並不影響最終的編譯結果,但是看着warning也很無語,畢竟強迫症。


       我們可以發現被警告沒有聲明的都是常用的C庫函數(這也是它為什么還能編譯成功的原因),這種情況,是因為我們沒有寫函數對應的頭文件的原因。 那么如何查詢某個函數對應的頭文件呢?
       在linux下,我們可以方便的使用命令
       man  函數名    來查詢該函數需要哪個頭文件來預編譯。
       如
       man strlen


能夠得到:


此時,我們再去C源碼中添加 
#include <string.h>,那么就不會對strlen報warning啦,其他函數類比參照此過程。退出這個查詢界面可以使用  shift+: 輸入q(quit的縮寫),然后便可以退出此界面了。————————————————版權聲明:本文為CSDN博主「Tang_shui」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。原文鏈接:https://blog.csdn.net/Tang_shui/article/details/81666368


免責聲明!

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



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