C++ での配列についてメモ

C++ での配列は

型 配列名[配列の数];

という書式で宣言する。


C++ での配列の例

#include <iostream>
using namespace std;

int main() {
	int array[20]; //int型の配列を要素数20で宣言
	int i;

	for(i=0; i < 20; i++){
		array[i] = i; //個々の配列に数値を代入
	}

	for(i=0; i < 20; i++){
		cout << "array[" << i << "] = " << array[i] << endl; //個々の配列の値を出力
	}
	
	return 0;
}


以下実行結果

array[0] = 0
array[1] = 1
array[2] = 2
array[3] = 3
array[4] = 4
array[5] = 5
array[6] = 6
array[7] = 7
array[8] = 8
array[9] = 9
array[10] = 10
array[11] = 11
array[12] = 12
array[13] = 13
array[14] = 14
array[15] = 15
array[16] = 16
array[17] = 17
array[18] = 18
array[19] = 19

ちなみに

ロベールのC++教室には、ちなみに、配列変数を宣言するときには [ ] の中に変数は入れられませんという記述があるのだが、試してみたところコンパイルできてしまった。

#include <iostream>
using namespace std;

int main()
{
	int i = 4;
	int a[i];

	a[2] = 30;

	cout << "a[2] = " << a[2] << endl;

	return 0;
}


結果

a[2] = 30

C++ の仕様が変わったんだろうか? それともコンパイラのやさしさ?(ちなみに、コンパイラgcc 4.0.1 )