汨罗做网站价格,广东品牌网站制作公司,网页制作教程好看视频,迅速网站C 中有两种类型的表达式#xff1a;
左值#xff08;lvalue#xff09;#xff1a;左值参数是可被引用的数据对象#xff0c;例如#xff0c;变量、数组元素、结构成员、引用和解除引用的指针都是左值。非左值包括字面常量#xff08;用引号起的字符串除外#xff0c;…C 中有两种类型的表达式
左值lvalue左值参数是可被引用的数据对象例如变量、数组元素、结构成员、引用和解除引用的指针都是左值。非左值包括字面常量用引号起的字符串除外它们由其他地址表示和包含多项的表达式。在C语言中左值最初指的是出现在赋值语句左边的实体但这是引用关键字const之前的情况。现在常规变量和const变量都可视为左值因为可以通过地址访问它们但常规变量属于可修改的左值而const属于不可修改的左值。左值可以出现在赋值号的左边或右边。右值rvalue术语右值rvalue指的是存储在内存中某些地址的数值。右值是不能对其进行赋值的表达式也就是说右值可以出现在赋值号的右边但不能出现在赋值号的左边。
变量是左值因此可以出现在赋值号的左边。数值型的字面值是右值因此不能被赋值不能出现在赋值号的左边。下面是一个有效的语句
int g 20;
但是下面这个就不是一个有效的语句会生成编译时错误
10 20;