Định nghĩa hàm calloc() trong C

Hàm void *calloc(so-phan-tu, kich-co-phan-tu) cấp phát bộ nhớ được yêu cầu và trả về một con trỏ tới nó. Điểm khác nhau giữa malloc và calloc là: malloc không thiết lập bộ nhớ về 0 trong khi calloc thiết lập bộ nhớ đã cấp phát về 0.

Khai báo hàm calloc() trong C

Dưới đây là phần khai báo cho calloc() trong C:

void *calloc(so-phan-tu, kich-co-phan-tu)

Tham số

  • so-phan-tu: Đây là số phần tử để được cấp phát.
  • kich-co-phan-tu: Đây là kích cỡ của phần tử.

Trả về giá trị

Hàm này trả về một con trỏ tới bộ nhớ đã cấp phát, hoặc trả về NULL nếu yêu cầu thất bại.

Ví dụ minh họa cách sử dụng của calloc() trong C:

#include <stdio.h>
#include <stdlib.h>

int main()
{
   int i, n;
   int *a;

   printf("Nhap so phan tu: \n");
   scanf("%d",&n);

   a = (int*)calloc(n, sizeof(int));
   printf("Nhap %d so: \n",n);
   for( i=0 ; i < n ; i++ ) 
   {
      scanf("%d",&a[i]);
   }

   printf("Cac so vua nhap la: \n");
   for( i=0 ; i < n ; i++ ) 
   {
      printf("%d ",a[i]);
   }

   return(0);
}

Biên dịch và chạy chương trình C trên sẽ cho kết quả:

27image-1

Xem thêm:

Hướng dẫn học Thư viện C chuẩn:

Viết câu trả lời

Drop Images

0 Bình luận