占有C / C ++コンパイラプログラムメモリ領域は、一般的に次の5つのセクションに分かれています

占有C / C ++コンパイラプログラムメモリ領域は、一般的に次の5つのセクションに分かれています。

  • スタック領域(スタック):自動的に割り当て及び解放コンパイラにより、関数のパラメータ、ローカル変数を格納するために使用されます。スタックデータ構造と同様に動作します。
  • ヒープ(ヒープ):通常、プログラマやリリースによって割り当て(malloc関数/自由によって、新しい/削除)、プログラマが解除されていない場合は、オペレーティングシステムによるリカバリ手順の終わりに。これは、ヒープデータ構造が類似した配信リスト、全く異なるものです。
  • グローバル/静的領域:グローバル変数と静的変数が初期化グローバル変数と静的変数に格納されている領域に初期化され、初期化されていない変数別に隣接する領域に初期化されていないグローバル静的変数オペレーティングシステムによる回復プログラムの後。
  • リテラル定常領域:このような文字列定数などの値を保持するには、オペレーティングシステムプログラムによって回復した後、変更することはできません。
  • プログラムコードエリア:バイナリコードの関数本体を格納。

おすすめ

転載: www.cnblogs.com/judes/p/11223462.html