除了malloc與free外,c語言標準庫函式還提供了calloc函式用以動態申請記憶體,和malloc函式以位元組為單位申請記憶體不同,calloc函式是以目標物件為單位分配的,目標物件可以是陣列,也可以是後面會講到的結構體等。
calloc函式的原型為:
void* calloc(size_t num, size_t size);
malloc()函式返回型別也是void*,需要強制轉換才能為其他型別的指標賦值。calloc需要兩個引數以指定申請記憶體塊的大小,一是物件佔據的記憶體位元組數size,二是物件的個數num。
size_t型別是無符號整型,在windows及lcc編譯環境下,其定義為:
typedef unsigned int size_t;
為已經分配的記憶體重新分配空間並複製內容
realloc()函式有兩個引數
已分配的記憶體位址
重新分配的位元組數
void *realloc( void *ptr, size_t size );
C語言學習筆記之printf
printf hello world printf是c語言的輸出 我們把要輸出的內容放在 中,語句結束處用分號表示,但僅僅輸入這些,計算機是識別不了的,所以我們需要加乙個框架 include include int main printf hello world return 0 所有類似print...
C語言學習筆記
include include void swap int p1,int p2 void swapa int arr,int n void printfa int arr,int n int main int argc,char argv swap i,j printfa array,6 swapa...
C語言學習筆記
file 結構 包含在stdio.h裡 ifndef file defined struct iobuf typedef struct iobuf file define file defined endif fread 功 能 從乙個流中讀資料 函式原型 size t fread void buf...