프로그램 예가 포함된 C 라이브러리의 calloc() 함수

C에서 calloc이란 무엇입니까?

호출() C에서는 동일한 크기의 메모리 블록을 여러 개 할당하는 데 사용되는 함수입니다. COM에 메모리 공간을 할당하는 동적 메모리 할당 기능입니다.plex 배열 및 구조와 같은 데이터 구조를 사용하고 메모리에 대한 void 포인터를 반환합니다. Calloc은 연속 할당을 나타냅니다.

Malloc 기능 C의 calloc 함수는 메모리 공간의 여러 블록을 할당하는 데 사용되는 반면 단일 메모리 공간 블록을 할당하는 데 사용됩니다. C 프로그래밍에서 calloc에 ​​의해 할당된 각 블록의 크기는 동일합니다.

calloc() 구문:

ptr = (cast_type *) calloc (n, size);
  • 위 C의 calloc 명령문 예는 동일한 크기의 n 메모리 블록을 할당하는 데 사용됩니다.
  • 메모리 공간이 할당된 후 모든 바이트는 XNUMX으로 초기화됩니다.
  • 포인터 현재 할당된 메모리 공간의 첫 번째 바이트에 있는 값이 반환됩니다.

메모리 부족 등 메모리 공간 할당에 오류가 발생할 때마다 아래 calloc 예제와 같이 널 포인터가 반환됩니다.

콜록을 사용하는 방법

아래 C 언어의 calloc 프로그램은 산술 시퀀스의 합을 계산합니다.

#include <stdio.h>
    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;
    }

C 예제의 calloc 결과:

 
Building and calculating the sequence sum of the first 10 terms
Sum = 45