ExpertiDict

C · Essencial · Inglês · Técnico

malloc

/ˈmæ.lɑk/substantivo

Função da stdlib que reserva um bloco de bytes no heap e devolve um ponteiro para ele, ou NULL se falhar. A memória vem sem inicialização.

Onde usar

Toda chamada precisa de uma checagem de NULL e de um free correspondente. É onde nascem a maioria dos vazamentos e dos use after free.

Em código

int *v = malloc(5 * sizeof *v);
if (v == NULL)
  return 1;
v[0] = 42;
free(v);

Exemplos

Check whether malloc returned null before using the block.

Verifique se o malloc devolveu nulo antes de usar o bloco.

This malloc has no matching free.

Esse malloc não tem um free correspondente.

Cuidado

Presumir que o bloco vem zerado; para isso use calloc ou memset.

Sinônimos

alocação dinâmica

Antônimos

free

Origem

Abreviação de memory allocation.

Veja também

Todos os termos de C