中易网

VC6.0的一段代码能编译运行,但运行后出现DebugError

答案:2  悬赏:70  
解决时间 2021-12-12 05:14
运行EXE文件之后出现:
Debug Error!
。。。。。。。。。
DAMAGE:after Normal block(#61)at 0x003809E8

源代码如下:
#include
#include
using namespace std;

class Store
{
char *addr;
public:
Store(char *b=NULL);
~Store();
void display();
};

Store::Store(char *b)
{
addr=new char[strlen(b)];
strcpy(addr,b);
}

Store::~Store()
{
delete []addr;
}

void Store::display()
{
cout<}

int main()
{
Store A("Xixa");
A.display();
return 0;
}
最佳答案
addr=new char[strlen(b)];
在这里进行动态分配内存地址时应该多分配一个字节的内存。
没有设置这一位时delete [] addr可能删除 分配的内存以外
一直到'\0'为止的内存。 这是不行的
addr=new char[strlen(b)+1];
因为字符串实际是以'\0'来标识的。多设置的这一位就是'\0'
全部回答
你的程序有问题,%f要求输出浮点数,而你的a是整形的。 所以 要么将int a=3;改成float a=3.0; 要么将printf(&quot;%f\n&quot;,a);改成printf(&quot;%d\n&quot;,a);
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
山家湾子村委会地址在什么地方,想过去办事
增湾子村委会地址在哪,我要去那里办事
龙凤沟村委会地址在什么地方,想过去办事
龙凤沟里村委会地址有知道的么?有点事想过去
椅子圈村委会地址有知道的么?有点事想过去!
葫芦峪村委会地址在什么地方,想过去办事
下板城村委会办公地址在什么地方,我要处理点
椴树沟村委会地址有知道的么?有点事想过去!
土牛子村委会地址在什么地方,想过去办事
上板城村委会办公地址在什么地方,我要处理点
北沟村委会地址在哪,我要去那里办事
山西村委会地址在什么地方,想过去办事
岔沟村委会地址有知道的么?有点事想过去!
峡沟村委会地址在什么地方,想过去办事
南沟村委会地址有知道的么?有点事想过去!
推荐资讯
鄂州中心营业厅地址在哪,我要去那里办事
武汉城市职业技术学院两个小区各有啥专业
東門之達的意思是什么?東門之達的释义是什么
八綵的意思是什么?八綵的释义是什么啊?
五角星的五个顶点处的角之和是多少
红岭派出所地址在哪,我要去那里办事
西湾湖生活区地址在哪,我要去那里办事
头小男生怎样显得头大
请你帮老师写一条提醒同学们保持教室卫生的标
雨花社的意思是什么?雨花社的释义是什么啊?
石家庄东岗路与建华大街交口附近有酒店吗?最
RVV2*1.5可走多少电流
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?