暇不遮喻与一些思考
暇不遮喻,图文并茂对新手是相对友善的。
但是代码质量有待提高。
可怕的是很多人缺乏独立思考的能力。
在03链栈_LinkStack_UTF-8.c中
提供的代码
/* 构造一个空栈S */ Status InitStack(LinkStack *S) { S->top = (LinkStackPtr)malloc(sizeof(StackNode)); if(!S->top) return ERROR; S->top=NULL; S->count=0; return OK; }
其中malloc后,再指向空,明眼就能看出这样产生了内存泄露,单纯的demo看不出问题,但是本身代码存在问题。
结合书中方法,不使用头节点。那在InitStack时,完全无需malloc 任何StackNode,只需在push时进行malloc就好。
可是csdn及作者勘误都未有人提出,而这本书却已经出了这么多年,实属可惜。
学有余力的或者来温故知新的程序员还是建议使用《数据结构与算法分析——C语言描述》。
有关键情节透露