编译显示[Error] lvalue required as increment operand
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编译显示[Error] lvalue required as increment operand相关的知识,希望对你有一定的参考价值。
代码是这样的:
int search(struct BTree* n,int r)
if(n->id==r)
return 0;
else
if(n->right!=NULL)
if((n->right)->data>(n->left)->data)
n=n->right;
return ++search(n,r);
else
n=n->left;
return ++search(n,r);
else
n=n->left;
return ++search(n,r);
在++search(n,r)处报错,为什么?这个函数的返回值是整型啊?
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是表达式,它不能再用=赋值的
以上是关于编译显示[Error] lvalue required as increment operand的主要内容,如果未能解决你的问题,请参考以下文章
这个C编译错误提示啥意思。。。lvalue required as left operand of assignment
单片机keil编译代码时报错error C213: left side of asn-op not an lvalue
lvalue required in function main错误是啥意思?
C 语言如图选中行,提示lvalue required as unary '&' operand