問題
プログラムの実行時に利用される記憶域にスタック領域とヒープ領域がある。それらの領域に関する記述のうち,適切なものはどれか。
選択肢
- 1サブルーチンからの戻り番地の退避にはスタック領域が使用され,割当てと解放の順序に関連がないデータの格納にはヒープ領域が使用される。
- 2スタック領域は未割当て領域から取得され,ヒープ領域は使用領域から取得される。スタック領域は未割当て領域には存在しない。
- 3ヒープ領域はスタック領域の予備領域であり,スタック領域が一杯になった場合にヒープ領域が動的に使用される。
- 4ヒープ領域を構造的にはスタックと同じプッシュとポップの操作によって,データの格納と取出しを行う。
正解
1. サブルーチンからの戻り番地の退避にはスタック領域が使用され,割当てと解放の順序に関連がないデータの格納にはヒープ領域が使用される。
詳しい解説を見る解説を閉じる
解説
スタック領域はサブルーチンの戻り番地や局所変数など,後入れ先出しで割当て・解放できるデータに使われる。一方ヒープ領域は,割当てと解放の順序に依存しない動的なデータ(実行中に任意のタイミングで確保・解放するメモリ)の格納に使われる。イ・ウ・エはスタックとヒープの役割を取り違えた誤った記述である。(出典: 平成31年度 春期 応用情報技術者試験 午前 問17)
一問一答
全400問を繰り返し学習