Cprogramming-c-arrays

提供:Dev Guides
移動先:案内検索

C-配列

同じタイプの要素の固定サイズの順次コレクションを格納できる一種のデータ構造を配列します。 配列はデータのコレクションを格納するために使用されますが、配列を同じタイプの変数のコレクションと考える方が便利な場合がよくあります。

number0、number1、…​、number99などの個々の変数を宣言する代わりに、numbersなどの1つの配列変数を宣言し、numbers [0]、numbers [1]、…​、numbers [99]を使用して表現します個々の変数。 配列内の特定の要素は、インデックスによってアクセスされます。

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

Cの配列

配列の宣言

Cで配列を宣言するために、プログラマは次のように配列に必要な要素の型と要素の数を指定します-

type arrayName [ arraySize ];

これは「単一次元配列」と呼ばれます。 arraySize はゼロより大きい整数定数でなければならず、 type は任意の有効なCデータ型にすることができます。 たとえば、double型の balance という10要素の配列を宣言するには、このステートメントを使用します-

double balance[10];

ここで、_balance_は、最大10個のdouble番号を保持するのに十分な変数配列です。

配列の初期化

あなたはCの配列を1つずつ、または次のように単一のステートメントを使用して初期化することができます-

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 ^ th ^要素に50.0の値を割り当てます。 すべての配列は、ベースインデックスとも呼ばれる最初の要素のインデックスとして0を持ち、配列の最後のインデックスは、配列の合計サイズから1を引いたものになります。 以下に示すのは、上で説明した配列の図的表現です-

配列のプレゼンテーション

配列要素へのアクセス

配列名にインデックスを付けることにより、要素にアクセスします。 これは、配列の名前の後に角かっこ内に要素のインデックスを配置することによって行われます。 たとえば-

double salary = balance[9];

上記のステートメントは、配列から10 ^ th ^要素を取得し、その値を給与変数に割り当てます。 次の例は、上記の3つの概念すべてを使用する方法を示しています。 宣言、割り当て、および配列へのアクセス-

#include <stdio.h>

int main () {

   int n[ 10 ];/*n is an array of 10 integers*/
   int i,j;

  /*initialize elements of array n to 0*/
   for ( i = 0; i < 10; i++ ) {
      n[ i ] = i + 100;/*set element at location i to i + 100*/
   }

  /*output each array element's value*/
   for (j = 0; j < 10; j++ ) {
      printf("Element[%d] = %d\n", j, n[j] );
   }

   return 0;
}

上記のコードをコンパイルして実行すると、次の結果が生成されます-

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

配列の詳細

配列はCにとって重要であり、さらに注意が必要です。 配列に関連する次の重要な概念は、Cプログラマーには明らかなはずです-

Sr.No. Concept & Description
1

Multi-dimensional arrays

Cは多次元配列をサポートしています。 多次元配列の最も単純な形式は、2次元配列です。

2

Passing arrays to functions

インデックスなしで配列の名前を指定することで、関数に配列へのポインタを渡すことができます。

3

Return array from a function

Cでは、関数が配列を返すことができます。

4

Pointer to an array

インデックスなしで配列名を指定するだけで、配列の最初の要素へのポインタを生成できます。