2008年9月4日 星期四

calloc()

C有提供在程式執行時,可以向系統要求分配記憶體,如常用的malloc(),用法如下:

double * ptr;
ptr = (double *)malloc(20 * sizeof(double));

上例是向系統要求20個記憶體空間,每個空間可以存放double值。除了malloc()外,還有另一個要求記憶體的函式calloc()。用法如下:

double * ptr;
ptr = (double *)calloc(20, sizeof(double));

差別在於calloc需要兩個參數,第一個是多少個記憶體空間,第二個則是每個空間所需要的大小。calloc()的另一個特色是他會將所有bit都設成0。

0 意見: