首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

数组是分配在栈下,为什么不是遵循栈内存向低位扩展的属性

2012-11-04 
数组是分配在栈上,为什么不是遵循栈内存向低位扩展的属性?在函数中初始化一个数组后,应该是分配在栈上吧,

数组是分配在栈上,为什么不是遵循栈内存向低位扩展的属性?
在函数中初始化一个数组后,应该是分配在栈上吧,我刚看到资料说栈上的内存是向低位扩展的,也就是说后来的元素分配的地址在低位。但是遍历数组的时候,指针指向首元素后,是对它进行++操作来遍历的。为什么是++呢,如果遵循向低位扩展,不是应该用--吗?

[解决办法]

探讨

那在gcc中,如果要遍历int a[5],int* p = a之后,应该对--p来指向下一个元素吗?

[解决办法]
楼主,离这个资料远点!!!

探讨
在函数中初始化一个数组后,应该是分配在栈上吧,我刚看到资料说栈上的内存是向低位扩展的,也就是说后来的元素分配的地址在低位。但是遍历数组的时候,指针指向首元素后,是对它进行++操作来遍历的。为什么是++呢,如果遵循向低位扩展,不是应该用--吗?

热点排行