Иногда необходимо динамическое выделение памяти, когда размер используемого пространства заранее не известен. Для этого используется выделение памяти на куче. Недостатков у такого подхода два:
▪️ во-первых, память необходимо вручную очищать.
▪️ во-вторых, выделение памяти – достаточно дорогостоящая операция.
Для выделения памяти на куче в си используется функция malloc (memory allocation) из библиотеки
🔵 Эпсилон
▪️ во-первых, память необходимо вручную очищать.
▪️ во-вторых, выделение памяти – достаточно дорогостоящая операция.
Для выделения памяти на куче в си используется функция malloc (memory allocation) из библиотеки
stdlib.h
void * malloc(size_t size);Функция выделяет size байтов памяти и возвращает указатель на неё. Если память выделить не удалось, то функция возвращает NULL. Так как malloc возвращает указатель типа void, то его необходимо явно приводить к нужному нам типу. А на видео показано что будет, если не очищать 😏
🔵 Эпсилон