Функция malloc: выделение динамической памяти в языках C и C++
Функция malloc используется в языке программирования Си для динамического выделения памяти во время выполнения программы. Она позволяет программе запросить определенное количество байтов для хранения данных, которые могут быть использованы в дальнейшем.
Пример использования функции malloc:
#include
#include
int main() {
int n;
printf("Enter the number of elements: ");
scanf("%d", &n);
int *arr = malloc(n * sizeof(int));
if (arr == NULL) {
printf("Memory allocation error\n");
exit(EXIT_FAILURE);
}
printf("Enter %d integers:\n", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
printf("You entered: ");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
free(arr);
return 0;
}
В этом примере пользователь вводит количество элементов массива и значения элементов. С помощью функции malloc выделяется память для массива, и если память не может быть выделена, программа выходит с ошибкой. Затем пользователь вводит значения элементов, которые сохраняются в массиве. Наконец, значения элементов выводятся на экран, после чего память освобождается с помощью функции free.
В целом, функция malloc является важной частью динамической выделения памяти в языке С, что позволяет программистам более гибко управлять памятью и использовать ее более эффективно.