#include文は、プリプロセッサディレクティブのひとつで、指定されたファイルを取り込むという命令・・・。
プリプロセッサは、コンパイル前に行う前処理をする機能で、プリプロセッサが行う命令をプリプロセッサディレクティブという・・・。
(なのでプリプロセッサディレクティブは正確にはC言語ではない・・・。)
これまで、自分で定義した関数や、標準ライブラリ関数を、main関数から呼ぶことができたのは、#include文によって、必要なヘッダファイルを取り込んでいたから・・・。
test.hに関数funcのプロトタイプ宣言を書いておく・・・。
test.cにfuncの定義・・・。
関数のプロトタイプ宣言はtest.hにあるので、#include文で取り込む・・・。
ダブルクォート("")で括ると、このソースファイルからの相対パスを基準に探して、見つかったら取り込む・・・。
また、標準関数printfを使っているので、stdio.hも#include文で取り込む・・・。
タグ(<>)で括ると、システムインクルードパス(/usr/includeなど)からの相対パスを基準に探して、見つかったら取り込む・・・。
main.cは、
こちらも、funcを呼ぶのでtest.h、printfを呼ぶのでstdio.hをインクルード・・・。
funcを呼んだあと、printfで"main"を出力・・・。
$ vi main.c $ gcc -o main main.c test.c $ ./main func main $
こんな感じに出力できた・・・。
Sample/c/include/include/src/include at master · bg1bgst333/Sample · GitHub