C言語 char 文字列を扱ってみよう

今回は、文字列を使ってみましょう。

1文字の扱いとは異なりますので、早速やってみましょう。

#include <stdio.h>
#include <string.h>

void main(void) {
      char str[15];

      strcpy(str, "ABCDEFGHIJKLMN");

      printf("str = %sです\n", str);
}

プログラムを実行すると以下のようになります。

str = ABCDEFGHIJKLMNです

#include <string.h>は
strcpyと言う文字列を扱う関数を使うために必要になります。

char str[15]; でchar型の配列を15、用意します。
これで14文字を格納する事ができます。

15文字格納できるように見えますが、
C言語のルールで文字列の最後には、
区切りとして、ゼロを入れなければならない事になっています。
(この文字をナル文字、またはヌル文字と言います。)

なので、20文字扱いたかったら
領域を21用意しなければならないという事です。

次にstrcpy(str, “ABCDEFGHIJKLMN”); で、
“ABCDEFGHIJKLMN”という文字列をstrに代入しています。

この時、自動的にヌル文字が追加されますので、
特別意識する必要はありません。

ここでもC言語のルールで、
次のような表記はできないので、注意して下さい。

str = "ABCDEFGHIJKLMN";

最後にprintf(“str = %sです\n”, str); で文字列を表示しています。
%sは文字列を表示するために使う指定子です。