假设定义:
int i = 10;
int *p = &i;
Run Code Online (Sandbox Code Playgroud)
为什么*pa有效左值:
*p+=10;
Run Code Online (Sandbox Code Playgroud)
不应该*p计算存储在&i的int的值,即.10,因此生成"非左值"错误?
Sie*_*geX 13
的左值是指存储的区域能够被操纵的表达式.
*p是这样一种表达,指的是一个存储区域.这与说法不同,10+=10;因为10不像变量那样引用存储区域.
| 归档时间: |
|
| 查看次数: |
2511 次 |
| 最近记录: |