C言語で別のファイルの変数を参照する方法
別のファイルの変数を参照するには、次の手順を行います。
- 変数を呼び出す必要があるファイルで、extern キーワードを使って変数を宣言する。たとえば、ファイル2.cで変数int xが定義されている場合、ファイル1.cで変数int xをexternキーワードを使って宣言する。extern int x;
- 可変数の呼び出しに必要なヘッダーファイルは、必ず2つのファイルに含まれるようにしてください。たとえば、可変数 int x が a.h で定義されている場合、ファイル 2.c にヘッダーファイル a.h をインクルードします: #include “a.h”。ファイル 1.c にもヘッダーファイル a.h をインクルードする必要があります。
- ファイル1.c内で変数xを直接利用可能です。
コンパイルとリンクを確実に正しく行うために、file1.cとfile2.cの2つのファイルを一緒にコンパイルする必要があります。gcc file1.c file2.c -o outputを使用して、コンパイラで2つのファイルを一緒にコンパイルすることもできます。または、2つのファイルを別々にコンパイルしてから、gcc -c file1.c -o file1.oとgcc -c file2.c -o file2.oでリンクし、さらにgcc file1.o file2.o -o outputでリンクすることもできます。