C · Essencial · Inglês · Técnico
malloc
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.