关于gdb
今天遇到一个奇怪的问题,我在编译好的a.out文件直接运行出现段错误。但是通过gdb运行的结果是能够出现的(虽然结果不正确)大家能说说是什么原因?难道是gdb的功能因素!
------解决方案-------------------- int *p1=new int[k];
int *B=new int[length];
char *p;
for(i=0;i<=k;i++)
{
p1[i]=0;
}
lz 对 int *p1=new int[k]; 申请为k个元素
而
for(i=0;i<=k;i++)
{
p1[i]=0;
}
初始化了K+1个元素。内存被破坏,啥时出问题,就不知道了。
释放时
delete p1;
delete B;
使用 delete[] 释放。。。