質問: C言語初心者です。 別ファイルの関数を使用したい場合。 1)参照先でヘッダファイルをインクルード
回答: 書いてある内容が同じなら何も変わりません。 そもそも#includeというのは、指定されたファイルをソース上に展開するというだけの命令です。関数プロトタイプなどを記入したファイルを「ヘッダ」と名付けて、それを#includeすればコンパイルの過程でヘッダはソースファイル上に展開されて、結局「参照先で関数をexternで関数プロトタイプ宣言」したのと同じことになります。 ---func.h void func(void); ---main_a.c #include "func.h" int main(void){ func(); return 0; } はコンパイル(プリプロセス)時に void func(void); int main(void){ func(); return 0; } と展開されます。つまり ---main_b.c void func(void); int main(void){ func(); return 0; } と最初から書いてあるのと何も変わりません。