- malloc 返回类型为 void *,需要强转为对应的指针类型
- malloc 的参数是要申请的内存大小为多少个字节
#include <iostream>
using namespace std;
int main()
{
int *p = NULL;
int size = 10;
p = (int *)malloc(10*sizeof(int));
if(p == NULL)
{
cout << "failure" <<endl;
exit(1);
}
/*
operate p
*/
free(p);
p = NULL;
return 0;
}
想要对堆空间操作,并且将他牢牢把握在手里,要有一个指针指向所申请的内存,如果没有指针指向这块内存,程序员就失去了对这块堆内存的控制权,即所谓的内存泄漏。另外将内存回收后,要将这个指针赋NULL来防止出现野指针
网友评论