Calloc () Функція в бібліотеці C із програмою ПРИКЛАД

Зміст:

Anonim

Що таке мозоль в С?

Calloc () в C являє собою функцію , яка використовується для виділення безлічі блоків пам'яті , що мають один і той же розмір. Це функція динамічного розподілу пам’яті, яка виділяє простір пам’яті для складних структур даних, таких як масиви та структури, і повертає в пам’ять порожній вказівник. Calloc означає суміжне виділення.

Функція Malloc використовується для виділення одного блоку простору пам'яті, тоді як функція calloc у C використовується для виділення декількох блоків простору пам'яті. Кожен блок, виділений calloc у програмуванні на С, однакового розміру.

calloc () Синтаксис:

ptr = (cast_type *) calloc (n, size);
  • Наведений вище приклад твердження calloc в C використовується для виділення n блоків пам'яті однакового розміру.
  • Після виділення місця в пам'яті всі байти ініціалізуються до нуля.
  • Повертається покажчик, який на даний момент знаходиться в першому байті виділеного простору пам'яті.

Всякий раз, коли виникає помилка при розподілі місця в пам'яті, наприклад, дефіцит пам'яті, повертається нульовий покажчик, як показано в наведеному нижче прикладі calloc.

Як використовувати мозоль

У наведеній нижче програмі розмахування на C розраховується сума арифметичної послідовності.

#include int main() {int i, * ptr, sum = 0;ptr = calloc(10, sizeof(int));if (ptr == NULL) {printf("Error! memory not allocated.");exit(0);}printf("Building and calculating the sequence sum of the first 10 terms \ n ");for (i = 0; i < 10; ++i) { * (ptr + i) = i;sum += * (ptr + i);}printf("Sum = %d", sum);free(ptr);return 0;}

Результат мозоля в прикладі С:

Building and calculating the sequence sum of the first 10 termsSum = 45