C言語なら、俺に聞け! <14>
■ このスレッドは過去ログ倉庫に格納されています
0635デフォルトの名無しさん
NGNG多少間違ってることを承知で説明する。
Cでは、文字列は、次のようにあらわされる。
1000番地にAという文字
1001番地にBという文字
1002番地にCという文字
1003番地に終端文字
ここで、 char *p = "ABC";
とやった場合、pは1000番地を指す。つまり、ABCという文字列の
開始点を指すことになる。
char *p; // <- 1
p = "ABC" // <- 2
とやった場合、1の部分では p は何処を指すかは決まっていない。
2の部分で、p に "ABC"という文字列の先頭の番地が代入される。
宣言と代入は、「構文が違う」ということは覚える必要がある。
■ このスレッドは過去ログ倉庫に格納されています