QQ登录

只需一步,快速开始

登录 | 立即注册 | 找回密码

主题

帖子

荣誉

新鱼友

Rank: 1

积分
4
查看: 1400|回复: 13

为什么要用栈呢,入栈的作用是什么

[复制链接]
最佳答案
0 

尚未签到

jonyu9527 发表于 2016-3-8 19:38:45 140013 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
为什么要用栈呢,入栈的作用是什么???
楼层
跳转到指定楼层
最佳答案
53 
累计签到:1300 天
连续签到:1 天
~风介~ 发表于 2016-3-8 21:28:26 | 显示全部楼层
为什么要发帖呢,百度的作用是什么???
最佳答案
0 

尚未签到

jonyu9527  楼主| 发表于 2016-3-8 21:36:41 | 显示全部楼层
~风介~ 发表于 2016-3-8 21:28
为什么要发帖呢,百度的作用是什么???


最佳答案
53 
累计签到:1300 天
连续签到:1 天
~风介~ 发表于 2016-3-8 22:12:40 | 显示全部楼层
最佳答案
41 
累计签到:511 天
连续签到:1 天
兰陵月 发表于 2016-3-14 11:32:15 | 显示全部楼层
~风介~ 发表于 2016-3-8 22:12
http://www.cnblogs.com/scnutiger/p/3770991.html

这个说的很好,基本表达了意思~~我想如果要有深刻体会,还是要在应用中才有。
最佳答案
0 
累计签到:19 天
连续签到:2 天
adas 发表于 2016-5-20 17:17:36 | 显示全部楼层
栈就相当于一个书柜  可以放一些书在里面    入栈就是把数据放到里面  ...
最佳答案
0 
累计签到:47 天
连续签到:1 天
zhouxcpython 发表于 2016-5-21 23:02:48 | 显示全部楼层
感谢分享
最佳答案
0 

尚未签到

宇泽 发表于 2018-5-6 15:19:41 | 显示全部楼层
发帖和百度都是一种好习惯
最佳答案
0 
累计签到:7 天
连续签到:1 天
持恩 发表于 2018-6-1 23:52:47 | 显示全部楼层
一个寄存器可能被多次使用,有了栈以后,可以保护好数据,在调用的时候,进行恢复。然后栈还可以进行空间开辟。个人理解。
最佳答案
0 

尚未签到

shanling2017 发表于 2018-6-4 14:14:39 | 显示全部楼层
多学学吧,然后呢,这个栈的机制,是很有用的一个东西。好比说啊,你去书店里砍树去。然后呢,你的包包就得临时存放在人家柜台那里。这个时候,那个柜台,就是一个栈。其它的,暂时也说不出来。但是,可以确定,这是一个很有用的工作机制。
    计算机变成里面,很多的东西,其实,都是可以给你诸多的思考的东西。当然,老外的话,他也不见得就去想过,去总结过这件事。但是,客观上,这里面,还是有很多的东西,哲学化的问题,这种收获,都是可以得到的。栈,个人,就非常喜欢这个机制。
    C语言里面,谈到,局部变量放在栈中,动态内存分配的这个变量,好像是放在堆中的。然后呢,局部变量,放在栈中,栈的空间有限,当时觉得,这个栈不如堆有用。实际上,不见得。这种栈的工作机制,你可以联想一下你去书店里把东西放在柜台,以及说,有一天啊,你正在吃饭,突然要接个电话,然后再回头来吃饭,这里面,都有这种栈机制的应用。算是比较生活化的一个东西。很有趣的一个东西吧。
最佳答案
0 
累计签到:1 天
连续签到:0 天
伤感、曲调 发表于 2018-6-5 15:13:05 From FishC Mobile | 显示全部楼层
据说是为了保护现场  你call之前把寄存器全部入栈  结束时出栈
最佳答案
0 

尚未签到

shanling2017 发表于 2018-6-7 07:40:05 | 显示全部楼层
伤感、曲调 发表于 2018-6-5 15:13
据说是为了保护现场  你call之前把寄存器全部入栈  结束时出栈

我感觉,你应该是一个计算机科班出身的。
最佳答案
12 
累计签到:162 天
连续签到:2 天
理想小青年 发表于 2018-6-8 09:15:54 | 显示全部楼层
我用白话文
内存中没有栈一说,只是SS:SP寄存器指向的地址是栈对吧
你应该考虑的是为什么要有先进后出的问题,内存中后进先出这种模式就是栈的表示
后进先出能干啥?为了啥?打个不恰当的比方,就打比方别挑毛病各位
a = 1;
b = 2;
c = a+b;
d = c+a;
想知道c的结果对吧 必须 a,b相加
想知道d的结果,必须c,a相加
那么如果这些都是函数,那么我先运行c,后运行d,这时候就像我运行c之后把他扔下面,然后被d使用,只有d不用了我才能逐级把你释放,递归一直调用自己,你咋能把原来的值释放,必须最后的解放了一层层的剥洋葱
慢慢悟
最佳答案
7 

尚未签到

57158597@qq.com 发表于 2018-6-10 10:50:40 | 显示全部楼层
你跟你女朋友出去旅游,需要找个地方住吧?那就要去住客栈了
然后住客栈需要付钱啊,所以你走前面进去给钱,你女朋友跟着进去
手续办完安顿好你们要出去购物去玩,你女朋友肯定比你积极
所以出去的时候就变成你女朋友在前面你在后面
栈就是暂时给你们个容身之所,然后按先进后出,先出后进就这样的顺序进出

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐 上一条 /1 下一条

    移动客户端下载(未启用)
    微信公众号

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备11014136号

Copyright 2018 鱼C论坛 版权所有 All Rights Reserved.

Powered by Discuz! X3.3 Copyright
© 2001-2018 Comsenz Inc.    All Rights Reserved.

小黑屋|手机版|Archiver|鱼C工作室 ( 粤公网安备 44051102000370号 | 粤ICP备11014136号

GMT+8, 2018-6-20 15:54

快速回复 返回顶部 返回列表