在C/C++中怎么验证连续空间分配成功

在C/C++中如何验证连续空间分配成功
在C/C++中如何验证连续空间分配成功呢?
  #define NULL 0
  #define AllOCSIZE 1000
  char allocbuf[ALLOCSIZE];
  char *allocp=allocbuf;

  char *alloc(int n)
  {
  if(allocp+n<=allocbuf+ALLOCSIZE)
{
allocp+=n;
return(allocp+n);
}
else
retrn(NULL);
}
各位编程达人支个招啊!再次谢谢了!!!

------解决方案--------------------
看一下malloc源码?
------解决方案--------------------
你是指逻辑上的还是物理上的?
------解决方案--------------------
malloc 函数一般会有返回值,不同的系统不一样,如果是嵌入式低级系统,malloc不出来内存的症状一般是设备重启。高级点的系统,malloc函数做的完善,malloc到最后是不会引发重启事故的,一般会有返回值返回错误值。你只需判断返回值即可。
------解决方案--------------------
刚看清楚你是想看到连续的内存的分配,malloc 在物理上分配连不连续,是由操作系统决定的,一般是不连续的,这个问题我们不用去关心,因为你用的时候,已经在逻辑方面变成连续的了。
------解决方案--------------------
ALLOCSIZE 没有定义(注意l是大写的),retrn 应该是 return 
探讨

五楼大哥会不会觉得我不厚道?一个问题问这么多……呵呵

------解决方案--------------------
坐等大神
------解决方案--------------------
物理上的没法验证
逻辑上判断返回值就行了