void main()
{
       char * p = (char *)malloc(100);       p = (char *)realloc(p,200);       if ( ! p)
       {
            return;  //如果分配失败了,p原先malloc的内存是否会被释放掉呢??这个时候如果返回,会不会导致内存泄漏。  
       }
       if(p)
       {
          free(p);
          p = NULL;
       } 
       return;
}