2019年7月21日c言語ツイートスポンサーリンクstatic変数のスコープは、宣言したファイル内となるstatic変数のスコープはファイル内となりますが、サンプルコードで確認してみます。main.cにg_numをstatic変数として宣言します。初期化も同時に行います。0;}func1.cにもg_numをstatic変数として宣言します。10;return;}ヘッダファイルになります。func1();#endifコンパイルして実行してみます。しましたが、func1()を抜けたあと、main.cのmain()では、g_numは9となってprintf出力されています。static変数のスコープが、ファイル内だと確認できました。g_num=9スポンサーリンクextern宣言したグローバル変数も確認extern宣言したグローバル変数も確認してみます。0;}g_numをextern宣言します。10;return;}ヘッダファイルです。func1();#endifコンパイルして実行してみます。しましたが、func1()を抜けたあと、main.cのmain()で、g_numが10となってprintf出力されています。2つのファイル間で、g_numが参照されているのが確認できました。