extern

extern.png

Cではextern指定子を使わずに同じ翻訳単位の中でグローバルデータオブジェクトを複数回宣言出来る。
初期設定子を提供している宣言が最大1つであるかぎり、オブジェクトは一度しか定義されていないとみなされる。

//file1.c
int x=1;//定義している
int f(){}
//file2.c
extern int x;//ただの宣言。定義ではない。

externはただの宣言,定義ではない。

サポートサイト Wikidot.com