は、次のコードを考える:上記のコードはコンパイルして実行されるCtrl-Cを使用してプログラムが中断されたときに、動的に領域を解放する方法はありますか?
#include <stdio.h>
int main()
{
int *p;
p = (int *)malloc(10 * sizeof(int));
while(1);
return 0;
}
を、そしてはCtrl + Cを押している間、実行中に中断され、どのようにp
に割り当てられたメモリが解放されますか?ここでオペレーティングシステムの役割は何ですか?そして、C++の場合は、new
演算子を使ってどのように違いますか?
オペレーティングシステムは、プロセスの終了に関係なく、プロセスが終了するとすべてを再要求します。 –
'Ctrl + C 'の特別な点は何ですか? –
OSはどのようにメモリを再利用しますか?具体的には、OSのどのコンポーネントがそれを担当していますか? – 4sh1sh