开发者社区> 问答> 正文

数据结构 链表 c语言 简单问题

正在学习数据结构 有个问题想问一下
下面的代码中为什么 pt == NULL 就说明列表满?
//如果列表满则返回真
bool ListIsFull (const List * plist)
{

Node * pt;
bool full;

pt = (Node *)malloc(sizeof (Node));
if (pt == NULL)
    full = true;
else
    full = false;
free (pt);
return full;

}

展开
收起
a123456678 2016-03-20 14:23:07 2017 0
1 条回答
写回答
取消 提交回答
  • 因为前一句是 malloc 申请内存,申请不到内存返回的指针就是 NULL——既然没内存了就不能向列表添加新节点,看成“满了”。
    吐槽:这个函数该叫 MemoryIsFull(),参数 plist 根本没用到么!

    2019-07-17 19:09:37
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何使用Tair增强数据结构构建丰富在线实时场景 立即下载
Apache Flink 流式应用中状态的数据结构定义升级 立即下载
低代码开发师(初级)实战教程 立即下载