标签:左值和右值
左值:能够出现在赋值符号左边的东西。
他表示一个特定的位置,即左值表示一块地址。
所以像:++i=10,i++=10, a+10=10....都是错误的。因为赋值号左边的东西不能表示一块地址。
arr[10]=10,因为arr[10]通过下标访问一块地址,所以他是正确的。
int a,b,*p;
p=&a;
*p=10; 指针p存储的是a的地址,当使用*p时,表示的是a的位置。
右值:能够出现在赋值符号右边的东西,表示一个数值。
当*p放到赋值号右边时表示的是p所指向空间的值。
所以 *p既可以当左值,也可以当右值。
本文出自 “11132019” 博客,请务必保留此出处http://11142019.blog.51cto.com/11132019/1760074
标签:左值和右值
原文地址:http://11142019.blog.51cto.com/11132019/1760074