变量地址&存储空间
关于变量地址及其存储空间,本人有太多困惑,请大家指点:1、变量的地址在程序的哪个阶段被确定?(包括动态变量、静态变量、常量等)
2、有这样一种说法:“动态变量在编译时获得唯一的地址和和存储空间”。这时的地址指的应该是逻辑地址吧?物理地址的获得是不是在链接或运行时获得?
----------------解决方案--------------------------------------------------------
说法是错误的。
什么是动态变量?
auto int i; /* auto 可选声明方式 */
这是动态变量吗?
如果这个变量是在函数中声明的,那么地址是在进入函数后分配的。
全局变量是在编译时分配的。(具有静态存储时期的变量的地址才是在编译时分配的)
[[italic] 本帖最后由 cosdos 于 2007-11-26 16:09 编辑 [/italic]]
----------------解决方案--------------------------------------------------------
对于程序,这就是地址。
对于操作系统,它好要处理更多。
[[italic] 本帖最后由 cosdos 于 2007-11-26 16:07 编辑 [/italic]]
----------------解决方案--------------------------------------------------------
用auto声明全局变量是无效的,即便加上auto,也是静态属性。
----------------解决方案--------------------------------------------------------