char ポインターと他のデータ型ポインターの初期化について質問があります。具体的には、次のように char ポインターを初期化できます。
char *char_ptr = "Hello World";
私の知る限り、文字列の唯一の特別な点は、それが「0」で終了する文字配列であることです。ただし、次の行為は禁止されています。
int *int_ptr = {1,2,3,4};
しかし、これを行う必要があります:
int int_arr[] = {1,2,3,4};
int_ptr = int_arr;
int_ptr が int_array の最初の要素を指すようにするためです。
char の場合、char_ptr が文字列を指すようにする前に、文字列 "Hello World" を char 配列として明示的に定義していませんが、文字列 "Hello World" を使用して char_ptr を直接初期化しています。
私の質問は、なぜこれが当てはまるのかということです。これを行うことができるが、他の型ではできない文字列の特別な点は何ですか?
前もって感謝します、
シュリラム