顺序栈LIFO的一些问题,拙见


typedef struct Stack
{
    int data[max];
    int top;
}stack;
stack *p ;

顺序栈只能在栈顶进行操作的原因是什么?
定义一种数据类型并用p指针指向,当top为10时,不是可以通过指针访问 data[i](i<9)来访问其中的元素并进行操作吗,还是说栈的操作只可以通过指针和top来完成系列操作

还有疑问是对栈进行出栈的时候,是不是原来的数据没有变,只不过不能通过指针访问到了?

既然是堆栈,自然只能在栈顶进行操作,你要在栈底操作,岂不是队列了。

对栈进行出栈的时候,是不是原来的数据没有变,只不过不能通过指针访问到了
是的。硬要访问也能访问到,但是没有意义了。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^