关于delete

tiandiyishaou2010 2010-10-03 02:04:41
请看代码:
#include "stdafx.h"
#include <iostream>
using namespace std;
const int m=5;
void main()
{
char re[m];
cin.getline(re,m,'#');
puts(re);
delete []re;
system("pause");
}

我在控制台输入的是:wangfeng
结果:wang
Debug Assertion failed
Expression:_BLOCK_TYPE_IS_VALID(pHead_>nBlockUse)
For information on how your program can cause an assertion failure,see the Visual C++ documentation on asserts.
(Press Retry to debug the application)
..........

我的delete 哪里用错了,请指教啊,新手上路~~


...全文
113 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
harderman 2010-10-03
  • 打赏
  • 举报
回复
new和delete是要成对出现的,使用new分配的存储空间是在堆上申请的,使用结束后它不会自动释放,需要我们使用delete进行释放,要不就会造成内存泄露的可能.
如果申请了单个空间,释放的时候应该是delete p;
如果是申请了连续的一组空间,释放的时候就应该是delete[]p;
cmlr_ 2010-10-03
  • 打赏
  • 举报
回复
先new才行,因为delete后面要跟一个指针,而new返回一个指针,
顺便提醒:刚申请好的空间最好先置零一下,因为很可能有乱的数据,因而要抹去重写
superwavelet 2010-10-03
  • 打赏
  • 举报
回复
先new才行啊
haow85 2010-10-03
  • 打赏
  • 举报
回复
没有用 new 申请空间。
maoxing63570 2010-10-03
  • 打赏
  • 举报
回复
char re[m];
放在栈上的,不要你delete,它生命结束的时候会自动弹出的
char *re=new char[m]
放在堆上的,需要delete来释放

#include <iostream>
#include <cstddef>
using namespace std;
int main ()
{
const size_t m=10;
char *re=new char[m];
delete [] re;
return 0;
}
shenchenman 2010-10-03
  • 打赏
  • 举报
回复
想用delete就用new初始化吧
doctor1190 2010-10-03
  • 打赏
  • 举报
回复
char re[m];
delete []re;

re不是动态分配的,是编译时分配空间,所以不能用delete;delete 是和 new 搭配使用,只有new出来的空间才能用delete;

改为char *re=new char[m]; 就可以了

【采用BPSK或GMSK的Turbo码】MSK、GMSK调制二比特差分解调、turbo+BPSK、turbo+GMSK研究(Matlab代码实现)【采用BPSK或GMSK的Turbo码】MSK、GMS内容概要:本文主要介绍了采用BPSK或GMSK调制方式的Turbo码相关技术研究,重点涵盖GMSK调制下的二比特差分解调方法、Turbo码与BPSK/GMSK调制相结合的系统性能分析,并提供了完整的Matlab代码实现方案。研究内容包括调制解调原理、编码结构设计、误码率仿真及系统优化等关键环节,旨在通过仿真手段验证所提出方案的有效性和可靠性,帮助研究人员深入理解现代数字通信系统中的关键技术和其实现方法。; 适合人群:具备一定通信原理和Matlab编程基础,从事无线通信、信号处理、编码理论等相关领域的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握GMSK调制与Turbo码结合的系统设计与仿真方法;②学习二比特差分解调算法在实际通信系统中的应用;③通过Matlab代码实现提升对数字调制解调和信道编码技术的理解与实践能力;④为相关课题研究、毕业设计或工程项目提供参考和技术支持。; 阅读建议:建议读者结合文中提供的Matlab代码逐模块运行与调试,对照通信系统基本原理深入理解各环节功能,重点关注调制解调过程与Turbo译码的协同工作机制,并尝试修改参数以观察系统性能变化,从而达到理论与实践相结合的学习效果。

65,211

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧