单向链表实现堆栈
要求:
1 使用C语言;
2 使用单向链表;
3 接口规范,通用性强;
解:
1 链表元素的类型确定
为了最终确定这两个函数的调用模型,你还需要知道进出堆栈的数据是属于哪种类型的。也就是说,你得声明一个struct结构作为链表元素的数据类型。
如果没有特殊要求,应该考虑使用无类型指针来实现一个通用的解决方案。基于无类型指针的struct结构和函数调用模型如下所示:
typedef struct elementT
{
struct elementT*next;
void *data;
}element;
2 push(压入)和pop(弹出)
push(压入)和pop&#