Programar em C/Gerenciamento de memória: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Edudobay (discussão | contribs)
Sem resumo de edição
Linha 10:
Essas duas funções são as mais básicas para o gerenciamento de memória. '''<tt>malloc</tt>''' é responsável pela alocação de um pedaço de memória, e '''<tt>free</tt>''' é responsável por liberar esse pedaço de memória.
 
Para alocar um espaço na memória, precisamos fornecer à função <tt>malloc</tt> o número de bytes desejados. Para isso, precisaremos usar o operador <tt>sizeof</tt>, introduzido na seção anterior. Seja um exemplo.
 
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
/* ponteiro para memória que será alocada */
int *p;
int i;
/* alocar 10 elementos inteiros, ou seja, ( sizeof (int) * 10 ) */
p = malloc ( sizeof (int) * 10);
for(i = 0; i < 10; i++) {
p[i] = i * 2;
printf ("%d\n", p[i]);
}
/* libera a memória alocada por malloc */
free (p);
return 0;
}
 
=== calloc ===