[小白求帮助]分配的内存什么时候需要手动释放

C++语言 码拜 8年前 (2017-05-09) 2834次浏览
例如下面这个程序,运行到delete之后就断点了,后面那个cout的输出运行不了。这个delete应该没有问题呀,还是本人原先分配的那个地址啊
[code=c
]#include<iostream>
#include<string>
using namespace std;
int main()
{
char *a = new char[5];;
char b[5] = “abce”;
strcpy_s(a, 10, b);
delete a;
cout << “1”;
return 0;
}[/code]
解决方案

40

strcpy_s(a, 10, b);
==============
你只是申请了5个长度,用了10个越界了。

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明[小白求帮助]分配的内存什么时候需要手动释放
喜欢 (0)
[1034331897@qq.com]
分享 (0)