C语言中的 error: lvalue required as left operand of assignment
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中的 error: lvalue required as left operand of assignment相关的知识,希望对你有一定的参考价值。
部分代码如下: x.c: PAIR(*p,*q).max=INT_MAX; //error: lvalue required as left operand of assignment x.h: #define PAIR(x,y) ((x) <= (y) ? H2Cost[(x)][(y)-(x)] : H2Cost[(y)][(x)-(y)]) x.c: static cost_t ** H2Cost; x.h: struct cost_s unsigned long plus; unsigned long max; cost_s; typedef struct cost_s cost_t;
参考技术A C语言的赋值必须是左值的,也就是左边必须是变量,不能是表达式的你的PAIR(*p,*q).max是表达式,它不能再用=赋值的
以上是关于C语言中的 error: lvalue required as left operand of assignment的主要内容,如果未能解决你的问题,请参考以下文章
C 语言如图选中行,提示lvalue required as unary '&' operand
C语言错误:expression must be a modifiable lvalue
Expression must be a modifiable lvalue error in this code的原因是啥?