首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

VS2010顶用VC++编程当运行到delete释放内存就出现死锁

2013-05-02 
VS2010中用VC++编程当运行到delete释放内存就出现死锁。例如:#include iostreamusing namespace stdint

VS2010中用VC++编程当运行到delete释放内存就出现死锁。
例如:
#include <iostream>
using namespace std;
int main()
{
char * p= new char[10];
p="abcdef";
char * up = p;
while(*up!='\0')
{
cout<<*up;
up++;
}
delete[] p;
if(p!=NULL)
cout<<"\n未释放内存。";
return 0;
}
运行到delete语句那里就动不了了。
[解决办法]
p="abcdef";
p指向的内容已经变了,不指向之前分配的内存。delete "abcdef"当然会出错。

热点排行