スポンサードリンク
HOME > C言語 > extern - 外部変数

C言語 - extern - 外部変数

プログラムが大きくなると、複数ファイルによるプログラム作成になります。

別々のファイル間でグローバル変数を使う際は、extern指定子を使います。

program1.c
#include <stdio.h>

void show(void);

// グローバル変数(定義・実体)
int idata;

void main(void) {
   show();

}


program2.c
#include <stdio.h>

void show(void);

// グローバル変数(宣言・参照)
extern int idata;

void show(void) {
   idata = 10;
   printf("%d\n", idata);
}

グローバル変数は、"program1.c"で定義されていますが、

extern指定子を使う事により、別ファイルの"program2.c"でも

グローバル変数 idata を使う事ができるようになっています。



グローバル変数の定義・実体は、1箇所のみとなりますが、

グローバル変数の宣言・参照(extern付き)は、複数個所で使用できます。



program1.c
#include <stdio.h>

void show(void);

// グローバル変数(定義・実体)
int idata;

void main(void) {
   show();

}


program2.c
#include <stdio.h>

void show(void);

void show(void) {
   // グローバル変数(宣言・参照)
   extern int idata;

   idata = 10;
   printf("%d\n", idata);
}

この例の場合は、関数 show の中で extern が使用されているので、

グローバル変数 idata は、ファイル"program2.c"全体で使えるワケではなく、

この関数内でのみ使用できる。と言う事になります。



スポンサードリンク







HOME

言語解説編
プログラミング用語・知識

C言語

C++言語

Java

C#

Visual Basic.NET

アプリケーション編
C言語による
コンソールプログラミング




Copyright (C) プログラミングランド All Rights Reserved