7.1. C

Programovací jazyk C řeší uživatelské přidělování paměti pomocí standardních knihovních funkcí. K dispozici jsou funkce malloc() pro přidělení prostoru určité velikosti a free() pro uvolnění přidělené paměti. Paměťový prostor přidělený funkcí malloc() není spojen s žádným datovým typem a není inicializovaný, vrácený ukazatel musí být přetypován na požadovaný typ a o jeho správnou inicializaci se musí postarat uživatel.

Příklad 7.1. Přidělování paměti v jazyce C

Následující funkce alokuje pole velikosti size, všechny prvky pole inicializuje na hodnotu init a vrátí ukazatel na začátek pole.

     # include <stdlib.h>
     int* allocIntArray(unsigned size, int init)
     {
        int i;
        int* p = (int*)malloc(size * sizeof(int));
        for(i = 0; i < size; i++)
           p[i] = init;
        return p;
     }