malloc數組
freeide
relloc函數
calloc指針
```clike斜體樣式
void* malloc(size_t size);code
>**申請一快連續可用空間,並返回指向這塊空間的地址。 若是開闢成功,則返回一個指向開闢好空間的指針。 若是開闢失敗,則返回一個NULL指針,所以malloc的返回值必定要作檢查。 返回值的類型是 void* ,因此malloc函數並不知道開闢空間的類型,具體在使用的時候使用者本身來決定。 若是參數 size 爲0,malloc的行爲是標準是未定義的,取決於編譯器。** ## free ```clike void free(void* p)
用來釋放動態開闢的內存。
若是參數 ptr 指向的空間不是動態開闢的,那free函數的行爲是未定義的。
若是參數 ptr 是NULL指針,則函數什麼事都不作。內存
void* calloc(size_t num,size_t size);
開闢num個size大小的空間,並初始化爲0;
通常也能夠用malloc申請好後,用memset。編譯器
void* memset(void* buffer,int c,int count) /buffer:爲指針或是數組, /c:是賦給buffer的值, /count:是buffer的長度.
void* realooc(void* ptr,zize_t size);
對原有空間進行從新申請,可變大小,
兩種狀況:後面空間足夠大,不足夠大。
見下一篇博客博客
1.對於申請動態空間必定要是釋放。 2.不能屢次釋放 3.不能越界釋放或操做。注意p++的使用 4.不能對空指針進行操做 5.不能只釋放一部分