【发布时间】:2013-03-30 11:30:34
【问题描述】:
通常变量'abc' 可以被寻址为'&abc'。
c中有哪些变量不能寻址?为什么?
【问题讨论】:
-
这是一个测验?....
标签: c memory-management var
通常变量'abc' 可以被寻址为'&abc'。
c中有哪些变量不能寻址?为什么?
【问题讨论】:
标签: c memory-management var
C中寄存器变量无法寻址的原因可以在这里找到:
【讨论】:
C99 标准的第 6.5.3.2 节(重点是我的)解决了*:
一元
&运算符的操作数应为函数指示符,[]或一元*运算符,或指定不是位字段且未使用register存储类说明符声明的对象的左值。
【讨论】:
寄存器变量不能通过这种方式访问。寄存器没有地址。因此,您不能将地址运算符 (&) 应用于寄存器变量。
【讨论】: