malloc函數是C語言中動態內存分配的函數,用于在堆區中分配一塊指定大小的內存空間,并返回該內存空間的首地址。
malloc的用法如下:
引入stdlib.h頭文件:#include <stdlib.h>
調用malloc函數:void* malloc(size_t size)
size為要分配的內存空間的大小,單位為字節。
返回值為void類型的指針,指向分配的內存空間的首地址。
如果分配失敗,返回NULL。
使用分配的內存空間:通過返回的指針進行訪問和操作。
釋放內存空間:使用free函數進行釋放:void free(void* ptr)
示例代碼:
#include <stdio.h>
#include <stdlib.h>
int main() {
int* ptr;
// 分配大小為10個整數的內存空間
ptr = (int*)malloc(10 * sizeof(int));
if (ptr == NULL) {
printf("內存分配失敗\n");
return 1;
}
// 使用分配的內存空間
for (int i = 0; i < 10; i++) {
ptr[i] = i + 1;
}
// 打印分配的內存空間的值
for (int i = 0; i < 10; i++) {
printf("%d ", ptr[i]);
}
printf("\n");
// 釋放內存空間
free(ptr);
return 0;
}
此示例代碼中使用malloc函數分配了大小為10個整數的內存空間,并將其視為int類型的指針進行訪問和操作。最后通過free函數釋放了分配的內存空間。