链表操作问题
最近再看《C Primer plus》,在高级数据表示一章中有关于链表的一个问题:
//如果列表已满则返回真
bool list_is_full(const list *plist)
{
node *pt;
bool full;
pt = (node *)malloc(sizeof(node));
if(pt == NULL)
full = true;
else
full = false;
free(pt);
return full;
}
这里为何malloc返回NULL(分配不成功)就说明list已满?