打印

关于栈的问题

[复制链接]
1331|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
txcy|  楼主 | 2012-11-18 10:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
据说内存内存分配时,系统分配的都放在栈中,new声明的都在堆中。
现在有如下问题:
1.这个栈与平常所说的先进后出的栈有什么区别
2.有如下定义
            int i = 0;
            int j = 0;
            int k = 0;
i,j,k,f是放在栈中的,如果按照栈的特性(先进后出)。那么访问j的话是不是要先弹出压在它上面的k,f呢?       int f = 0;

相关帖子

沙发
无冕之王| | 2012-11-18 10:47 | 只看该作者
访问变量,只是访问变量所在地址.看看反汇编就明白了.

使用特权

评论回复
板凳
yybj| | 2012-11-18 10:50 | 只看该作者
栈只是表示一种存储方式,
访问j你可以通过直接让指针往下移

使用特权

评论回复
地板
gxgclg| | 2012-11-18 11:04 | 只看该作者
平常所说的栈是指一种数据结构。

使用特权

评论回复
5
baidudz| | 2012-11-18 11:07 | 只看该作者
对于栈帧是先进后出的,但对于栈帧内部的部分,不一定是先进后出的,而可以是“直接访问地址”

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

274

主题

2106

帖子

0

粉丝