配列は 線形データ構造 すべての要素が順番に配置されます。の要素を集めたものです 同じデータ型 に保存されています 連続したメモリ位置 。
簡単にするために、配列を階段のようなものとして考えることができ、各ステップに値が配置されます (友人の 1 人だとします)。ここでは、友達の歩数を知るだけで、友達の位置を特定できます。
これにより、単に追加するだけで各要素の位置を計算することが容易になります。 オフセット ベース値、つまり配列の最初の要素のメモリ位置 (通常は配列の名前で示されます) に変換されます。基本値はインデックス 0 で、2 つのインデックスの差は オフセット 。
覚えておいてください: 次のインデックスの場所は、使用するデータ型によって異なります。
配列は常に固定サイズですか?
C 言語では、配列のサイズは固定されており、一度サイズが与えられると変更することはできません。つまり、縮小したり拡張したりすることはできません。その理由は、サイズを変更した場合に拡張する場合、次のメモリ位置を無料で取得できるかどうかがわからないためです (毎回可能であるわけではありません)。配列は宣言されると静的にメモリが割り当てられるため、配列を破壊できるのはコンパイラだけであるため、縮小は機能しません。