问答详情
源自:5-2 指针运算

指针运算与内存地址的运算好像有点矛盾

指针p++是向下移一格但为什么内存地址是增加的。不是说栈顶是从高地址向低地址移动的吗?

提问者:慕粉4000954 2016-10-26 13:55

个回答

  • 不看6324不混吃等死
    2017-08-13 01:36:55

    http://img.mukewang.com/598f3c3f000183e501780442.jpg箭头指向就是栈顶 也就是低地址

  • 不看6324不混吃等死
    2017-08-13 01:25:35

    栈顶可是低地址啊兄弟。

  • 慕粉1304077173
    2017-06-04 22:36:48

    其实不要用上下来对应理解地址的偏移比较好,而是用高低来理解

  • 慕码人1088981
    2016-10-28 14:23:07

    地址是连续

    下移一格的说法不够准确并不能判断,假设你想象地址是个竖着的高楼,那么地址下移一格自然是减少,你要是把这个高楼平躺在地上也就是横着的一个长条,那么下移一格自然代表就是增加的意思了,但是p++可以明确的说明地址是被增加了的。

    至于栈顶从高到低,是说从0xfffffffffff(为栈顶地址)到0(代码段地址),这个难道不是从高到低吗