こんにちは、私の質問はヒープに関するもので、データ構造ではなく、動的メモリ割り当てに使用されるメモリ領域に関するものです。
C (またはおそらく C++) でプログラムを作成していて、そのコードの深さのどこかで malloc() の呼び出しが行われたとします (または、C++ の場合は演算子 new が呼び出されます)。割り当てられたメモリの場所はどこですか?コンパイラ (リンカ?) は、ヒープとして使用されるデータ セグメントを追加しますか? そのセグメントのサイズはどのように決定されますか? 「ヒープセグメント」全体よりも大きなメモリのチャンクを割り当てようとするとどうなりますか? ヒープは拡張されますか? はいの場合、どのように?