2 qq 33317981 qq_33317981 于 2016.02.03 16:12 提问

栈的输出的c语言代码。。

c语言中栈的栈顶元素为什么有时候用L->top,有时候用L.top这两个有什么区别,栈的元素从栈底到栈顶输出的c语言代码怎么写,谢谢各位大神了

4个回答

qq_33921742
qq_33921742   2016.02.03 16:25
已采纳

用“->”还是“.”这个要看L是指针还是结构体了,栈是“先进后出,后进先出”。你是不是说,你要自己定一个“栈”其实呢就是自己做个链表,实现能从“栈底”到“栈顶”方向输出?

91program
91program   Ds   Rxr 2016.02.03 16:25

这个要看 L 的定义是指针,还是非指针变量。

91program
91program   Ds   Rxr 2016.02.03 16:27

栈的元素从栈底到栈顶输出:最直接的方法是先将栈元素出栈,建立一个新的栈。这样就是将本来的栈中元素的顺序颠倒了,然后对新的栈出栈就获取到想要的结果。

leilba
leilba   Rxr 2016.02.03 16:37

要看L的类型,比如说有如下的栈结构体:

struct Stack{
    int top() {
    //do somethng
    }
    //还有其他的一些东西
};

使用的时候:

// 直接创建Stack类型的数据
Stack stack;
//调用stack的top函数
stack.top();

//另外一种
//创建Stack类型的指针,并让其指向新建的具有Stack结构的内存空间(相当于对象)
Stack *stackPoint = new Stack();
//调用stackPoint的top函数
stackPoint->top();

也就是说,如果是指针变量的话那么就用 -> 访问内部的函数 ,如果是一般的变量的话,直接用 . 就可以访问内部函数了

leilba
leilba 你要从栈底到栈顶输出的话,有多种方案,一种是自己来重写一个栈,这个用数组或是链表来实现,给这个自定义的栈增加一个从栈底访问的方法,比如说数组的话0的位置作为栈底,链表的话第一个根节点作为栈底,然后依次访问到栈顶。
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!