struct mem_control_block { int is_available; // Esta es una marca int size; // Este es el tamaño del espacio real };
void free ( void * ptr) { struct mem_control_block * free ; libre = ptr - sizeof ( struct mem_control_block); libre -> está_disponible = 1 ; volver ; }
Free simplemente convierte el espacio en espacio libre disponible, y no hay inicialización, por lo que cada vez que se usa malloc para asignar espacio, se inicializa, generalmente memset (), como memset (buf, 0, 100);
También puede usar calloc en lugar de malloc para asignar memoria, la función calloc inicializará automáticamente la memoria aplicada.