错误:malloc():smallbin双链表损坏了吗?

时间:2014-07-19 07:31:13

标签: c debugging malloc

我收到的错误对我来说非常混乱。 我尝试为3个不同的字段x,y和z分配几个指针。 x和y的大小为101,z的大小为6,所有这些都必须是浮动的。 我在子程序中执行此操作,x和y首先比我尝试为z分配空间:

float *getbuff(nelem)
long nelem;
{
  float *point;
  if ((point = (float*)malloc(sizeof(float)*nelem)) == NULL) {
    fprintf(stderr,"getbuff: can't get enough memory\n");
    exit(1);
  }
  return(point);
}

我没有遇到x和y分配的问题,但是当我用z尝试这个时,我得到了错误:

 if ((point = (float*)malloc(sizeof(float)*nelem)) == NULL)

当我在shell中执行相同操作并且只是在没有调试的情况下启动程序时,一切正常并且我没有收到此错误?! 这是从哪里来的?

谢谢!

0 个答案:

没有答案