Função malloc() na biblioteca C com EXEMPLO
O que é malloc em C?
A função malloc() significa alocação de memória. É uma função que é usada para alocar um bloco de memória dinamicamente. Ele reserva espaço de memória de tamanho especificado e retorna o ponteiro nulo apontando para o local da memória. O ponteiro retornado geralmente é do tipo void. Isso significa que podemos atribuir a função malloc a qualquer ponteiro.
Sintaxe
ptr = (cast_type *) malloc (byte_size);
Aqui,
- ptr é um ponteiro de cast_type.
- A função malloc retorna um ponteiro para a memória alocada de byte_size.
Example: ptr = (int *) malloc (50)
Quando esta instrução é executada com sucesso, um espaço de memória de 50 bytes é reservado. O endereço do primeiro byte do espaço reservado é atribuído ao ponteiro ptr do tipo int.
Considere outro exemplo de implementação de malloc:
#include <stdlib.h> int main(){ int *ptr; ptr = malloc(15 * sizeof(*ptr)); /* a block of 15 integers */ if (ptr != NULL) { *(ptr + 5) = 480; /* assign 480 to sixth integer */ printf("Value of the 6th integer is %d",*(ptr + 5)); } }
Resultado:
Value of the 6th integer is 480
- Observe que sizeof(*ptr) foi usado em vez de sizeof(int) para tornar o código mais robusto quando a declaração *ptr for convertida para um tipo de dados diferente posteriormente.
- A alocação pode falhar se a memória não for suficiente. Nesse caso, ele retorna um ponteiro NULL. Portanto, você deve incluir código para verificar se há um ponteiro NULL.
- Lembre-se de que a memória alocada é contígua e pode ser tratada como um array. Podemos usar a aritmética de ponteiro para acessar os elementos da matriz em vez de usar colchetes [ ]. Aconselhamos usar + para se referir a elementos do array porque usar incrementação ++ ou +=altera o endereço armazenado pelo ponteiro.
A função Malloc também pode ser usada com o tipo de dados de caractere, bem como tipos de dados complexos, como estruturas.
Linguagem C
- Instrução C++ Switch Case com EXEMPLO
- Alocação dinâmica de matrizes em C++ com exemplo
- Ponteiros C++ com exemplos
- Sobrecarga do operador C++ com exemplos
- Estrutura C++ com exemplo
- Mapa na biblioteca de modelos padrão C++ (STL) com exemplo de impressão
- std::list em C++ com exemplo
- Funções C++ com exemplos de programas
- Função calloc() na biblioteca C com o programa EXEMPLO
- Função realloc() na Biblioteca C:Como usar? Sintaxe e Exemplo