先纠正一个错误,应该是l-value,小写字母L,并不是数字1
在c语言中,l-value指能放在等号左侧,被赋值的变量,它基本的特点是:占有内存空间,不是常量,更不是立即数。
举几个可以作为左值的例子:
int i = 0;//i是左值 char s[6] = "Hello"; s[0] = 'W';//s[0]是左值
char *p = &s; p++; //p是左值
再举几个不能作为左值的例子:
const int ci = 0; ci++;//不能通过编译
1++;//立即数不能作为左值,不能++
int fun(){return 0;}
fun() = 1;//函数返回值不能作为左值被赋值
左值。可以放到=左边的变量(初始化除外)
是l不是1
左值的意思,一个在内存中存在的实体
是l-value吧,左值
左值