文字列の配列は、しばしば文字テーブルと呼ばれる。次の例は、(ヌル文字を含めて)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