C 庫函數 - calloc()

C 標準庫 - <stdlib.h> C 標準庫 - <stdlib.h>

描述

C 庫函數 void *calloc(size_t nitems, size_t size) 分配所需的記憶體空間,並返回一個指向它的指針。malloccalloc 之間的不同點是,malloc 不會設置記憶體為零,而 calloc 會設置分配的記憶體為零。

聲明

下麵是 calloc() 函數的聲明。

void *calloc(size_t nitems, size_t size)

參數

  • nitems -- 要被分配的元素個數。
  • size -- 元素的大小。

返回值

該函數返回一個指針,指向已分配的記憶體。如果請求失敗,則返回 NULL。

實例

下麵的實例演示了 calloc() 函數的用法。

實例

#include <stdio.h> #include <stdlib.h> int main() { int i, n; int *a; printf("要輸入的元素個數:"); scanf("%d",&n); a = (int*)calloc(n, sizeof(int)); printf("輸入 %d 個數字:\n",n); for( i=0 ; i < n ; i++ ) { scanf("%d",&a[i]); } printf("輸入的數字為:"); for( i=0 ; i < n ; i++ ) { printf("%d ",a[i]); } free (a); // 釋放記憶體 return(0); }

讓我們編譯並運行上面的程式,這將產生以下結果:

要輸入的元素個數:3
輸入 3 個數字:
22
55
14
輸入的數字為:22 55 14

C 標準庫 - <stdlib.h> C 標準庫 - <stdlib.h>