C言語なら、俺に聞け! <23>
■ このスレッドは過去ログ倉庫に格納されています
0391デフォルトの名無しさん
NGNGstr[i] = xxx();
は、xxx()が既存のどこか別の場所に文字列を書き込み、その先頭アドレスを返すわけだな。
実行するごとに変わるのはその文字列の内容であって、アドレスは変わらない。
str[i] = xxx();の代入は、文字列の内容ではなくアドレスを保存しているため、
すべて同じアドレスしかなく、内容を参照すると最後の実行結果の文字列しか読めないわけね。
アドレスじゃなく内容をコピーしる!
■ このスレッドは過去ログ倉庫に格納されています