日期:2014-05-16  浏览次数:20753 次

关于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[] 释放。。。