中易网

c++,delete处为何中断

答案:3  悬赏:0  
解决时间 2021-01-13 16:38
  • 提问者网友:欺烟
  • 2021-01-13 00:13
c++,delete处为何中断
最佳答案
  • 二级知识专家网友:野味小生
  • 2021-01-13 01:10
问题出现在这一句
p[strlen(str.c_str())] = 0;

这个p应该改成t,就是
t[strlen(str.c_str())] = 0;
因为p在循环中已经向后移动了
再这样做,会搞坏别的内存块

直接删掉这句也可以,strcpy时候,会把最后的\0拷过来,这个多此一举
全部回答
  • 1楼网友:走死在岁月里
  • 2021-01-13 03:20
delete t;试下
  • 2楼网友:廢物販賣機
  • 2021-01-13 02:43
t是指针,不是数组指针,直接delete t就可以了。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息