在C语言中动态内存分配函数是malloc
函数名:malloc
函数原型:extern void *malloc(unsigned int num_bytes)
函数功能:分配内存
参数:内存大小
返回值:void类型指针
函数名:free
函数原型: void free(void *ptr)
函数功能:释放内存
参数:void类型指针
实例代码:
#include <stdio.h>
#include <stdlib.h>
#define size 10
void Input(int *p, int len)
{
for(int i=0; i<len; i++)
{
p[i] = rand () % 100;
}
}
void Output(int *p, int len)
{
for(int i=0; i<len; i++)
{
printf("%d ",p[i]);
}
printf("\n");
}
void main()
{
int *pArr = (int*)malloc(sizeof(int) * size);
if(NULL == pArr)
{
printf("动态内存分配失败,程序终止!\n");
return;
}
Input(pArr, size);
Output(pArr, size);
}执行结果:
在C++中动态内存分配使用new,释放使用delete
程序代码:
#include <iostream>
using namespace std;
#define size 10
void Input(int *p, int len)
{
for(int i=0; i<len; i++)
{
p[i] = rand () % 100;
}
}
void Output(int *p, int len)
{
for(int i=0; i<len; i++)
{
cout<<p[i]<<" ";
}
cout<<endl;
}
void main()
{
int *pArr = new int[size];
if(NULL == pArr)
{
cout<<"动态内存分配失败,程序终止!"<<endl;
return;
}
Input(pArr, size);
Output(pArr, size);
}执行结果:
本文介绍C语言中使用malloc和free进行动态内存分配与释放的方法,并提供代码示例。同时,展示了C++中如何利用new和delete来管理内存。
1456

被折叠的 条评论
为什么被折叠?



