文字列を初期化する

C 言語では文字列を格納するときに char 型の配列を使用しますが、他の配列と同じく配列を宣言するときに同時に初期化として文字列を格納することができます。ここでは C 言語で文字列を初期化する方法について解説します。

(Last modified: )

文字列を初期化する

文字列は char 型の配列ですので他の配列と同じく宣言と同時に初期化することができます。

char str[6] = {'H', 'e', 'l', 'l', 'o', '\0'};

また宣言と同時に初期化する場合は要素数を省略することもできます。

char str[] = {'H', 'e', 'l', 'l', 'o', '\0'};

また char 型の配列に文字列を格納する場合は次のように記述することもできます。

char str[] = "格納したい文字列";

文字の集まりをダブルクオーテーションで囲うと文字列として扱われます。例えば "Hello" などです。このように記述した場合は自動的に文字の最後に \0 が付けられます。

char str[] = "Hello";

文字列を宣言と同時に初期化する場合は通常この記述方法が用いられます。

サンプルコード

では簡単なサンプルプログラムを作成して試してみます。

#include <stdio.h>

int main(void){
  char str1[] = {'H', 'e', 'l', 'l', 'o', '\0'};
  char str2[] = "Good morning";

  printf("%s\n", str1);
  printf("%s\n", str2);

  return 0;
}

上記を「test2-1.c」の名前で保存します。まずコンパイルを行います。

文字列の初期化

コンパイルが終わりましたら「test2-1」と入力して実行します。

文字列の初期化

( Written by Tatsuo Ikura )

Profile
profile_img

著者 / TATSUO IKURA

プログラミングや開発環境構築の解説サイトを運営しています。