文字列

整数を入れた配列について見てきましたが、文字について考えてみると、文字を並べたものと言うのは日常的にもよく使いますよね。

C言語では文字の列、文字列を"abcde"と表記します。

文字列の初期化

このように文字列を初期化することができます。

char hello[12] = "Hello World";

上の例で11文字の文字列に対してで12要素の配列を用いていることがわかります。なぜでしょう? C言語では文字列の終わりに0が入っています。この0は文字列の終了を表しているのでその1文字分余分に確保する必要があるのです。 ちなみにこの0をを別の値で上書きしてしまった場合は文字列として扱った場合にどこまで読めば良いのかわからずに、プログラムがクラッシュしてしまうなんてこともあります。

文字列の表示

出力に使う場合にはprintfの%sを用います。

char str[] = "Cワークショップ!";
printf("%s\n", str);