2

実際に手動でストレージを割り当てる必要があるのは何ですか?

私が考えることができる唯一の可能なタスクは、32 ビット整数に収まらない大きなバイナリ データの場合です。

これは正しいです?その他のユースケースは?

4

2 に答える 2

2

一般に、コンパイル時にデータのサイズがわからない場合は、毎回手動でストレージを割り当てる必要があります。ほとんどすべての状況は、次の 2 つのカテゴリに分類されます。

  • プログラムはファイル/ネットワーク/ユーザー入力などからデータを読み取る必要があり、そのデータの正確な量がコンパイル時に不明である、または
  • プログラムは何らかの出力を生成して格納する必要がありますが、その出力の正確な量は、プログラムを作成する時点ではわかりません。

非常に一般的なデータ構造の多くは、実行時に正確なサイズが決定される場合、任意のサイズのメモリを割り当てることができることを前提としています。そうすることで、プログラムが処理するデータの時間と量に応じてプログラムのストレージ需要が変化するため、データ構造を動的に「拡大」および「縮小」できます。

于 2013-02-25T15:57:49.200 に答える
0

たくさんの例。リンク リスト構造体などの構造体を満たすためのメモリの割り当て。

于 2013-02-25T15:54:32.687 に答える