基本知识:
1. ++高于*=的优先级
2. 左值、右值:在“=”左边的叫左值,在“=”右边的叫右值。
左值可以被改变,它是存储数据值的那块内存的地址,也称为变量的地址。
右值是指存储在某内存地址中的数据,也称为变量的数据。
左值可以作为右值,右值不能作为左值。
3. i++不能当左值使用,++i可以当左值使用
++i表示取i的地址,再对其内容+1,然后在把值放到寄存器中;
i++表示取i的地址,把值装入寄存器,再对内存中的i执行加1操作。
int i = 1;
++i * = i;//i = 4
int i = 1;
i++ * = i;//语法错误