プログラマーが割り当てられたブロックの一部を解放できるようにする動的メモリ割り当てシステムが存在するかどうかに興味がありました。
例えば:
char* a = malloc (40);
//b points to the split second half of the block, or to NULL if it's beyond the end
//a points to a area of 10 bytes
b = partial_free (a+10, /*size*/ 10)
これが賢明/賢明でない/難しい理由についての考えは? これを行う方法は?
私にはそれが役に立ちそうな気がします。
ありがとう!
=====編集===== いくつかの調査の結果、Linux カーネルの bootmem アロケータは、bootmem_free 呼び出しでこの操作と同様のことを許可しているようです。それで、私は興味があります.bootmemアロケーターがこれを許可するのに、ANSI Cは許可しないのはなぜですか?