malloc()函数是C语言中用于动态分配内存的函数。它的原型如下:
void* malloc(size_t size);
malloc()函数的参数是要分配的内存块的大小,以字节为单位。这里的size_t是一个无符号整数类型,通常是unsigned long或unsigned int。
malloc()函数返回一个指向分配内存块起始位置的指针。如果分配失败,则返回NULL。
malloc()函数在堆内存中分配一块指定大小的连续内存空间,并返回指向这块内存空间的指针。这块内存不会被初始化,可能包含任意初始值。
使用完分配的内存后,需要调用free()函数来释放该内存,防止内存泄漏。
例如,以下代码演示了如何使用malloc()函数动态分配一个整型变量的内存空间:
#include <stdio.h>
#include <stdlib.h>
int main() {
int *ptr;
ptr = (int*)malloc(sizeof(int));
if (ptr == NULL) {
printf("内存分配失败\n");
return 1;
}
*ptr = 10;
printf("动态分配的整数:%d\n", *ptr);
free(ptr);
return 0;
}
在这个示例中,首先分配了一个int大小的内存空间,然后将值10存储到这块内存中,最后释放了这块内存。