文字列の配列

文字列の配列は、しばしば文字テーブルと呼ばれる。次の例は、(ヌル文字を含めて)40文字の文字列を10個格納できる。

char names[10][40];

各文字列にアクセスするには、左の添字だけを書いてやる。例えばキーボードから読み取った文字列を3番目に格納するには、

gets(names[2]);

とする。同様に、5番目の文字列を出力するには、

printf(names[4]);

とする。

次のプログラムは、文字テーブルに 0 から 9 を意味する単語を格納しておき、ユーザーが入力した数値に対応する単語を出力する。

#include

int main(void)
{
    char digits[][10] = {
        "zero",
        "one",
        "two",
        "three",
        "four",
        "five",
        "six",
        "seven",
        "eight",
        "nine"
    };
    char num[2];

    printf("Input a number: ");
    gets(num);
    printf("%s\n", digits[num[0] - '0']);

    return 0;
}

実行例:

takatoh@nightschool $ ./sample_5_5
Input a number: 3
three

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください