1. 程式人生 > >如何自定義C語言.h標頭檔案?

如何自定義C語言.h標頭檔案?

    在專案實踐中,如果一個.c檔案程式過長,可以把檔案中的函式單獨放在一個頭檔案中,然後在.c中包含該標頭檔案即可。這兩天,根據所看的書《C語言的科學與藝術》和網上的資料,發現實際上有兩種寫法。

寫法1:在.h標頭檔案中就包含函式的實現,這種標頭檔案實際上是把函式放在一起,便於管理而已。這種情況下只有一個.h檔案。

寫法2:在.h標頭檔案中只包含一些函式的宣告,沒有具體的實現。函式的實現放在另外一個不包含main()的.c原始檔中,然後需要將原始檔和標頭檔案連線起來。這種情況下包含.h檔案和.c檔案兩種檔案。

然後將可以像包含<stdio.h>一樣直接引用自定義的標頭檔案了。如果想在其他專案中也使用,可以將其放到標頭檔案庫中。

兩種寫法我只實現了第一種。需要注意的是.h需要和呼叫.h的.c檔案放在同一個資料夾即可。

具體例項如下:

.h檔案包含以下函式

void hello(void)
{
	printf("hello world\n");
}

.c檔案程式如下:

#include <stdio.h>
#include "test.h"

int main()
{
	hello();
	return 0;
}

——————

如果.h檔案包含很多函式檔案,實際上還是感覺標頭檔案中只包含函式宣告比較好,每個函式實現放在單獨的.c原始檔中。這樣思路清晰,對於大型問題,處理的過程比較規範。

但是並沒有實現,網上和書上對於只包含函式宣告的標頭檔案,沒有一致的說法。。。不過感覺應該可以做到的!