C 庫函數 - calloc()
描述
C 庫函數 void *calloc(size_t nitems, size_t size) 分配所需的內存空間,并返回一個指向它的指針。malloc 和 calloc 之間的不同點是,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]); } return(0); }
讓我們編譯并運行上面的程序,這將產生以下結果:
要輸入的元素個數:3 輸入 3 個數字: 22 55 14 輸入的數字為:22 55 14