C言語なら俺に聞け(入門編)Part 110
■ このスレッドは過去ログ倉庫に格納されています
0056デフォルトの名無しさん
2012/11/18(日) 11:11:45.49配列として宣言されたmsgはリテラル(アドレス値)だから
変更できない。msgのアドレスから保持している文字列は
変更可能だけど。
ポインタ変数として宣言された*msgはmsgというポインタ変数に
"msg"という「コンパイラがどこかに定義した文字列」のアドレス
を代入している。msgがポインタ変数だから増減もできる。
msg[]の場合
msg 'm'
msg+1 's'
msg+2 'g'
*msgの場合
msg = 0x????????
0x???????? 'm'
0x????????+1 's'
0x????????+2 'g'
ということ。
■ このスレッドは過去ログ倉庫に格納されています