C言語で文字列に値を代入する方法は何ですか。
C言語では、文字列に値を割り当てる方法として、次の2つの方法を使用できます。
- 文字配列を使用します。
char str[] = "Hello, World!";
この方法は、コンパイル時に文字列定数を文字配列にコピーし、配列のサイズは文字列の長さに自動的に調整される。
- ポインタ変数の使用:
char *str = "Hello, World!";
この方法では、文字列定数のアドレスをポインタ変数に割り当て、ポインタ変数を文字列定数の先頭アドレスに指します。ポインタ変数に値を割り当てる際には、ポインタ変数に文字列定数を格納するために十分なスペースがあることを確認する必要があります。
文字列を配列で代入するときには、文字列を変更することができますが、ポインタ変数で代入した場合には読み取り専用であり、文字を直接変更することができません。文字列を変更したい場合は、配列に保存し、strcpy()やstrncpy()関数を使用して文字列をコピーする必要があります。