C語言:解決多個C檔案包含同一標頭檔案引起的檔案重複包含問題
阿新 • • 發佈:2018-10-31
解決多個C檔案包含同一標頭檔案引起的檔案重複包含問題,並給出全域性變數如何定義和宣告的方法.
解決方法:
1. 定義公共檔案:
global.c 和global.h
其中,
global.c檔案中:
#include "global.h"
//定義全域性變數
int global_num1,global_num2;
//定義函式
int func(int input1 ,int input2)
{
int output;
output = input1+input2;
return ouput;
}
global.h檔案中:
#ifndef _GLOBAL_H #define _GLOBAL_H //宣告在global.c中定義的變數 extern int global_num1,global_num2; //宣告函式 int func(int input1, int input2); #endif
2. 其他檔案引用
假設有檔案 test1.c 和 test2.c,在該兩個檔案中需要使用定義在 global.c 中的變數和函式,只需在 test1.c 和 test2.c中包含標頭檔案global.h 並宣告 global_num1 和 global_num2即可 ;
test1.c :
#include "test1.h"
#include "global.h"
//定義全域性變數
extern int global_num1,global_num2;
test2.c :
#include "test2.h" #include "global.h" //定義全域性變數 extern int global_num1,global_num2;
這樣,就不會出現檔案重複包含問題,程式碼看起來也很規整。