2010-12-12 14 views
1

参考になりましたが、動的メモリ管理があり、 はメモリを再割り当てする関数を見ていましたが、この関数を使って配列を大きくすることができるかどうかは疑問でしたその意味が、私は本当にこれは私の質問をしているので、ここでCPLUSPLUS参照 上の例に表示されます。このライン配列のメモリを再割り当てするC++

more_numbers = (int*) realloc (numbers, count * sizeof(int)); 

を理解していないものを一言で言えば

realloc()大きな配列を作るために使用することができますか?ありがとう:)

+0

サイズ変更可能なコンテナが必要な場合は、ベクターなどを使用します。 –

答えて

7

アレイのメモリがmalloc(),calloc()、またはrealloc()より前に割り当てられた場合のみ。それ以外の場合は、トラブルを求めています。

+6

「問題を尋ねる」とは、「何も起こりません。プログラムがクラッシュする可能性があります。ハードドライブの内容を削除したり、ガールフレンドになる可能性があります妊娠 " – SingleNegationElimination

+0

@TokenMacGuy勝ちです。 –

0

"この関数はメモリブロックを新しい場所に移動する可能性があります。その場合、新しい場所が返されます"。ブロック内のデータを保持していても、このブロック内のオブジェクトへのポインタは無効になることがあります。