アットウィキロゴ

配列

大量なデータ管理に便利!

 今回は配列です。配列と言ってもまだピンと来ないと思います。
まず、配列はどのような場面で必要になってくるのかということを考えましょう。

 例えばあなたがゲームのキャラクターデータ管理プログラムを任されたとします。
変数にキャラクターの体力を入れていくことにしました。しかし、キャラクターは多数の種類があり、
キャラクター数の分だけ変数宣言していたら日が暮れてしまいますし、めんどうですよね。
そんな時に配列を使うとスッキリします。配列とは同じ型の変数の集まりを番号で管理しているものです。
書き方を見てみましょう。

配列
型  配列名[要素数];
int   vc[5];
 

 型は変数と同じ意味ですね。配列名も変数と同じく任意の名前を設定してください。
要素数は値を格納するとが出来る変数の数です。要素数は必ず定数で指定してください。
例ではint型5つ分の要素を宣言していますので5つのデータが格納できます。

 配列も変数と同じく宣言時に初期化が行えます。書き方以下のとおりです。
初期値は順番に設定してください。要素数より多いとエラーになります。
要素数は省略できその場合は初期値の数が要素数として認識されます。

配列の初期化
int   vc[5] = { 1,2,3,4,5 };
int   vc[] = { 1,2,3,4,5 };  // 省略
 

 変数のように個別に代入したりすることもできます。
要素番号を要素数の代わりに指定するのです。この値を添え字と呼びます。
添え字は0から開始されます。今回は要素数が5なので添え字は0~4になります。

配列に代入
vc[ 0 ] = 10;
vc[ 1 ] = 20;
vc[ 2 ] = 30;
vc[ 3 ] = 40;
vc[ 4 ] = 50;
 

 もちろん、配列の代入も可能です。配列のコピーなどに用います。
下記の例では、配列vaの1番目の要素にに配列vbの1番目の要素をコピーしています。

配列同士の代入
va[ 0 ] = vb[1];
 
 今回もサンプルを用意しましたので実行してみましょう。

for文サンプル
/*
 配列を初期化して表示
*/
#include<stdio.h>
 
/* メイン関数 */
int main( void )
{
	int vc[] = {10,20,30,40,50};	// 配列を初期化
 
	/* 配列の要素数分ループ */
	for( int i = 0 ; i < 5 ; i++ )
	{
		/* 表示 */
		printf( "vc[%d] = %d\n", i, vc[i] );
	}
 
	return(0);
}
 

 実行すると配列の内容を表示します。



最終更新:2012年11月04日 18:13
添付ファイル