C++ 配列

C++ がサポート配列配列は、同じ型の要素を固定サイズで順番に格納するデータ構造です。配列は一連のデータを格納するために使用されますが、多くの場合、同じ型の変数の集まりと見なされます。

配列の宣言は、number0、number1、...、number99 のように個々の変数を宣言するのではなく、numbers のような配列変数を宣言し、numbers

すべての配列は連続したメモリ位置で構成されています。最も低いアドレスが最初の要素に対応し、最も高いアドレスが最後の要素に対応します。

配列の宣言

C++ で配列を宣言するには、要素の型と要素数を指定する必要があります。次に示すとおりです:

type arrayName [ arraySize ];

これは1次元配列と呼ばれます。arraySizeこれは0より大きい整数定数でなければなりません。type任意の有効な C++ データ型を使用できます。例えば、型が double で10個の要素を含む配列を宣言するにはbalance、宣言文は次のとおりです:

double balance[10];

これでbalanceは使用可能な配列であり、10個の double 型の数値を格納できます。

配列の初期化

C++ では、配列を要素ごとに初期化することも、次のような初期化文を使用することもできます:

double balance[5] = {1000.0, 2.0, 3.4, 7.0, 50.0};

波括弧 { } で囲まれた値の数は、配列宣言時に角括弧 [ ] で指定した要素数を超えることはできません。

配列のサイズを省略した場合、配列のサイズは初期化時の要素数になります。したがって、次の場合:

double balance[] = {1000.0, 2.0, 3.4, 7.0, 50.0};

前の例で作成した配列とまったく同じ配列が作成されます。次は、配列の特定の要素に値を代入する例です:

balance[4] = 50.0;

上記の文は、配列の5番目の要素の値を50.0に設定します。すべての配列は最初の要素のインデックスとして0を使用し、これは基底インデックスとも呼ばれます。配列の最後のインデックスは配列の総サイズから1を引いたものです。以下は、上記で説明した配列の図による表現です:

数组表示

配列要素へのアクセス

配列要素は、配列名とインデックスを使用してアクセスできます。要素のインデックスは角括弧内に置き、配列名の後ろに続けます。例えば:

double salary = balance[9];

上記の文は、配列の10番目の要素の値を salary 変数に代入します。次の例では、上記の3つの概念、すなわち配列の宣言、配列への代入、配列へのアクセスを使用しています:

例

#include <iostream> using namespace std; #include <iomanip> using std::setw; int main () { int n[ 10 ]; // n は10個の整数を含む配列です // 配列要素を初期化 for ( int i = 0; i < 10; i++ ) { n[ i ] = i + 100; // 要素 i を i + 100 に設定 } cout << "Element" << setw( 13 ) << "Value" << endl; // 配列の各要素の値を出力 for ( int j = 0; j < 10; j++ ) { cout << setw( 7 )<< j << setw( 13 ) << n[ j ] << endl; } return 0; }

上記のプログラムは次を使用しています:setw() 関数出力をフォーマットします。上記のコードがコンパイルおよび実行されると、次の結果が生成されます:

Element        Value
      0          100
      1          101
      2          102
      3          103
      4          104
      5          105
      6          106
      7          107
      8          108
      9          109

C++における配列の詳細

C++ では、配列は非常に重要であり、配列に関する詳細をより深く理解する必要があります。以下に、C++ プログラマーが必ず理解しておくべき配列関連の重要な概念を示します:

概念説明
多次元配列C++ は多次元配列をサポートしています。多次元配列の最も単純な形式は2次元配列です。
配列を指すポインタインデックスを付けずに配列名を指定することで、配列の最初の要素を指すポインタを生成できます。
関数への配列の受け渡しインデックスを付けずに配列名を指定することで、配列を指すポインタを関数に渡すことができます。
関数から配列を返すC++ では、関数から配列を返すことができます。
その他の拡張