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

VC2008 new分配内存的错误

2014-01-28 
VC2008 new分配内存的错误以下是问题描述: char * str3NULL char * buffNULL 在一个loop里面对以下语

VC2008 new分配内存的错误;

以下是问题描述:
char * str3=NULL;
char * buff=NULL;
在一个loop里面对以下语句做测试,结果让人很困惑
if(str3!=NULL)
{
delete [] str3;
str3=NULL;
}
str3=new char[5];
if(buff!=NULL)
{
delete [] buff;
buff=NULL;
}
buff=new char[3];
cout < <endl < <strlen(str3) < <endl < <strlen(buff) < <endl;
输出结果居然是
4
16
请哪个帮忙回答我

------解决方法--------------------------------------------------------
你分配了内存
但是没有赋值
求字符串长度就会出问题

        

热点排行