Przestrzenie nazw
Warianty
Działania

malloc

Z cppreference.com
< cpp‎ | memory/c

Składnia:

    #include <cstdlib>
    void* malloc(size_t size);

Funkcja malloc() przydziela obszar pamięci o rozmiarze size i zwraca do niego wskaźnik. W przypadku wystąpienia błędu zwracaną wartością jest NULL. Przydzielony obszar pamięci znajduje się na stercie (heap) a nie stosie (stack), należy więc pamiętać o zwolnieniu przydzielonej pamięci za pomocą funkcji free(). Przykład:

    typedef struct typ_osoba
    {
        int wiek;
        char imie[20];
    } osoba;
 
    osoba *bob;
    bob = (osoba*)malloc(sizeof(osoba));
 
    if (bob != NULL)
    {
        bob->wiek = 22;
        strcpy(bob->imie, "Robert");
        printf("%s ma %d lat\n", bob->imie, bob->wiek);
    }
 
    free(bob);

W C++ należy korzystać z operatorów new i delete, zamiast funkcji malloc()/free().

 

Tematy pokrewne: calloc, pl/keywords/delete, free, pl/keywords/new, realloc