📅  最后修改于: 2023-12-03 14:39:50.058000             🧑  作者: Mango
在C++中,malloc()是一种动态内存分配函数,它允许程序员在运行时分配指定大小的内存。malloc()函数返回指向分配内存的指针。
malloc函数的语法如下:
void* malloc(size_t size);
这里,size是根据数据类型的不同而不同的字节数。
malloc()会分配所需的内存空间,并返回一个指向它开头的指针。如果分配失败,则返回NULL指针。
下面是一个示例程序,展示了如何使用malloc()函数。
#include <iostream>
#include <cstdlib>
using namespace std;
int main() {
int* p;
p = (int*) malloc(5*sizeof(int));
if(p == NULL) {
cout << "Memory allocation failed." << endl;
exit(EXIT_FAILURE);
}
for(int i = 0; i < 5; i++) {
p[i] = i+1;
cout << "p[" << i << "] = " << p[i] << endl;
}
free(p); //释放p指向的内存
return 0;
}
上述示例程序将分配一个容量为5个int类型的动态数组。如果内存分配成功,则使用for循环向数组中填充数据,并输出每个元素的值。最后,使用free()函数释放由malloc()函数分配的内存。