平成31年春期 午前問題17
プログラムの実行時に利用される記憶領域にスタック領域とヒープ領域がある。それらの領域に関する記述のうち,適切なものはどれか。
1、スタック
一般にコールスタック・制御スタックと呼ばれている。LIFO方式で構成されプログラムの実行中サブルーチンの情報を記憶しておくメモリ領域。
サブルーチン終了後の戻りアドレスや局所変数などを保持する。
2、ヒープ
多くの場合、2つのラベルを持つ双方向リスト(リンク構造)で構成されプログラム上から動的(任意)に確保できるメモリ領域。
動的にメモリ取得・解放を繰り返すことによりメモリ上にどこからも参照されない領域(ガベージ)が発生する。
ヒープの初期状態は「未使用」状態であり、メモリの動的確保によって「使用」領域と「未使用」領域に分かれていきます。
ヒープとスタック領域の役割は異なるため、予備領域ではありません。