簡體   English   中英

您將如何#include多個.h文件以防止出現警告

[英]How would you #include multiple .h files to prevent warnings

我只有一個主.c文件,其中4個.h文件和.c文件包含在main函數中。 像這樣:

#include <stdio.h>
#include "file1.h"
#include "file2.h"
#include "file3.h"
#include "file4.h"

int main(){...}

.h文件具有所有對應的.c文件的所有聲明。 一些.c文件確實使用了其他.c文件中的函數,例如“ file4.c”使用了在“ file2.h”中聲明的某些函數,而“ file1.c”使用了在“ file3.h”中聲明的函數。 我嘗試在每個.c文件中聲明與main中相同的include,並嘗試對include文件進行重新排序,但是我仍然收到有關函數的隱式聲明和不兼容的隱式聲明的警告消息。

我想知道您將如何在大型項目中使用#includes消除警告消息。 我正在使用gcc作為編譯器。

如果要將.h文件導入到main()文件的一部分中,則必須確保沒有將其導入到任何地方。 例如:如果您在文件中導入file3.hfile3.h file4.h使用功能file4.h你有沒有進口file3.h文件的main()。 這是重復的定義。 如果您有很多初始化文件。 您可以將其導入唯一的常規文件中。 並在main()中使用該文件。 希望你喜歡^^

在所有自己的頭文件上嘗試以下操作:

(beginning of your head file)
#ifndef   _HEAD_FILE_NAME_H
#define _HEAD_FILE_NAME_H
...
<your headfile contents>
...

#endif
(end of your headfile)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM