【独学C言語】配列とは

※この記事は「2020年12月8日」に更新しました。

今回は、配列について。

前回は、for文(繰り返し処理)について、解説しました。

【独学C言語】for文(繰り返し処理)

【独学C言語】for文(繰り返し処理)

2020年4月20日

配列は、同じ型のデータを並べたもので、複数の値を扱うときに便利です。

例えば、1000個の同じデータ型を変数として宣言する場合、配列を使った方が圧倒的に楽です。

それでは見ていきましょう。

配列とは

配列は、同じデータ型の変数が並んだリストのようなものです。

箱が並んでいるのをイメージするとわかりやすいかもしれません。

一度に複数個、データの箱をメモリ上に確保することができます。



配列の宣言

配列の宣言は以下の通りです。

データ型 配列名[要素数];

配列名は、識別子なので、変数名と同様に命名規則に従う必要があります。

詳しくは下記記事をご参照下さい。

要素数と添字

要素数と添字について。

配列の一つ一つのデータの箱のことを要素と言います。

つまり、要素数は、データの箱をいくつ用意するかということになります。

添字は、用意したデータの箱一つ一つにアクセスするためのものです。

注意点として、添字は、0 から始まります。

例えば、以下のような配列を宣言します。

int number[3];

このとき、配列の一つ一つのデータは以下の通りです。

number[0]、number[1]、number[2]

添字は、要素数-1 までしか指定できないようになっています。

#define について

プリプロセッサディレクティブで最もよく使われるのが、この #define です。

ちなみに以前紹介した #include もプリプロセッサディレクティブです。

#define の書き方

#define の書き方を紹介します。

#define マクロ名 置換する値

例えば、配列を使ったプログラムをコーディングしていて、要素数が変更になったときに修正の手間を最小限におさえるために使います。

#define INPUT_CNT 5    /* 入力カウンター */

プリプロセッサディレクティブなので、記述場所は、main関数よりも前(外側)に書きます。

マクロ名は、一般的には大文字を使うことが多いです。

小文字を使用することもできますが、変数名と区別するために大文字を使う、C言語プログラマーが多いというわけです。

配列だけでなく、例えば、消費税など、時代によって変化する値も定義しておくと便利です。

TAX_RATE 10

サンプルプログラム【C言語】

配列を理解するためのサンプルプログラムです。

sample.c というソースファイルを作成します。

#include <stdio.h>

int main(void)
{
    int number[3];    /* 整数値入力用配列 */
    int cnt;    /* forループ制御カウンター */

    printf("\n");

    for(cnt = 0; cnt < 3; cnt++)
    {
        printf("Input number %d : ", cnt + 1);
        scanf("%d", &number[cnt]);
    }

    printf("\n");

    for(cnt = 0; cnt < 3; cnt++)
    {
        printf("Number %d is %d.\n", cnt + 1, number[cnt]);
    }

    printf("\n");

    return 0;
}

このサンプルプログラムは、整数値を 3回入力させて、あとで入力した数値を表示させるものです。

実行結果は以下の通りです。

配列とは

独学C言語の記事について【おまけ】

タカフミブログの独学C言語シリーズは、C言語を独学するということを目的に記事を書いています。

他の記事に興味がある方は以下をご参照下さい。

C言語に関する記事一覧

C言語は、古典的なイメージがある方もいるかもしれませんが、他の多くのプログラミング言語のベースになっています。

実際に本格的なソフトを開発するとなるとなかなか大変ですが、とにかくハードウェアのリソースが少なくても高速に動くのが最大のメリットです。

プログラマーや SE(システムエンジニア)を目指す方は一度お試し下さい。

最後に【配列について】

いかがでしょうか。

次回は、2次元配列について、解説していきます。

2次元配列

【独学C言語】2次元配列

2020年4月22日

今回は、配列について、紹介しました。

C言語の配列は奥が深いので、一つの記事だけでは、紹介できません。

他にも予備知識のようなものもあります。

今後も引き続き、紹介していきます。