next up previous contents
Next: 15.2.1.5 静的外部変数 Up: 15.2.1 記憶クラス Previous: 15.2.1.3 関数の中の静的変数

15.2.1.4 外部変数

外部変数については、既に学びました。外部変数は関数の外部で宣言をした 変数であり、記憶クラス指定子はありません。外部変数はその性質上、静的 変数と同じくプログラムの起動時に生成され、プログラムの終了まで消滅 することはありません。同時に、その有効範囲は全てのモジュールに渡り、 extern 宣言を行うことで、他のモジュールから外部変数を参照すること が可能になります。

他のモジュールで、外部変数として確保された変数は以下のようにして別の モジュールで参照可能です。

     extern int global;

但し、この宣言を外部的に(つまり関数外部で)行うか、関数内部で行うかに よって、参照している側のモジュールでのこの extern int exv の有効範囲は 異なります。外部的に行えば、外部変数を宣言しているのと扱いは同じで、全ての そのモジュール内部のプログラムから有効になりますが、関数内部で行えば、 その関数内部でのみ有効になります。



Noriyo Kanayama