栈中变量地址的问题

来源:4-6 函数指针与指针指向的数据访问

慕粉3792895

2017-06-07 12:25

为什么栈中的变量先声明的地址反而更小?栈不是递减的嘛,应该先声明的变量地址更大呀。

写回答 关注

3回答

  • 慕无忌5762020
    2018-08-13 14:21:07

    无论堆还是栈 都是自顶向下 从大到小 

  • 慕运维1298197
    2017-08-25 20:28:39

    很是迷糊!但是从视频教程来看,一楼的回复是不正确的吧!视频中rect的地址是0X4005A6,quadrate的地址是0X4005DD,按照先进的原则,rect在下(地址小),quadrate在上(地址大),从栈顶到栈低是大到小的,也就是说先分配的地址小

  • Deany
    2017-06-11 18:39:50

    栈是先进后出嘛,栈顶的是永远是后进的,内存地址也是相对小的,从栈顶到栈底,内存地址就是从小到大的。

    简单来说栈中先分配的变量,内存地址越大。

    lccund... 回复慕粉3792...

    ​http://www.imooc.com/qadetail/222520 很奇怪 不知道是不是操作系统的原因? 我这里调试是先分配的地址越大

    2017-06-20 23:30:52

    共 3 条回复 >

Linux C语言指针与内存

指针-C语言的核心,代领大家对c语言有更加深刻的理解

116475 学习 · 250 问题

查看课程

相似问题