new操作符

​ C++中利用new操作符在堆区开辟数据

​ 堆区开辟的数据,由程序员手动开辟,手动释放,释放利用操作符 delete

​ 语法: new 数据类型

​ 利用new创建的数据,会返回该数据对应的类型的指针

new出来的空间可以利用delete来释放

int* p = new int(10);//分配一个整型,值为10,p指向它
int* arry = new int[10];//分配一个人42个int的数组;p指向第一个int

delete p;			//p必须指向一个动态分配的对象或为空
delete[] arry;	//arry必须指向一个动态分配的数组或为空

 

new,delete与c语言中的malloc和free函数类似

C语言中堆区内存分配和释放

malloc()函数

#include <stdlib.h>

void *malloc(size_t size);

功能:在内存的动态存储区(堆区)中分配一块长度为size字节的连续区域,用来存放类型说明符指定的类型。分配的内存空间内容不确定,一般使用memset初始化。

参数:

size:需要分配内存大小(单位:字节) 返回值:

成功:分配空间的起始地址 失败:NULL

free()函数

#include <stdlib.h>

void free(void *ptr);

功能:释放ptr所指向的一块内存空间,ptr是一个任意类型的指针变量,指向被释放区域的首地址。对同一内存空 间多次释放会出错。

参数:

ptr:需要释放空间的首地址,被释放区应是由malloc函数所分配的区域。 返回值:无

C语言常用内存操作函数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值