C编译提示“lvalue required”怎么办?

如题所述

lvalue required :需要左值。

C语言编译常见错误提示

Ambiguous operators need parentheses 不明确的运算需要括号   

Ambiguous symbol ''xxx''  不明确的符号  

Argument list syntax error  参数表语法错误  

Array bounds missing  丢失数组界限符  

Array size too large  数组尺寸太大  

Bad character in parameters  参数中有不适当的字符  

Bad file name format in include directive  包含命令中文件名格式不正确   

Call of non-function  调用未定义的函数   

Call to function with no prototype  调用函数时没有函数说明 

Cannot modify a const object  不允许修改常量对象  

Case outside of switch  漏掉了case 语句  

Case syntax error  Case 语法错误   

Code has no effect  代码不可述不可能执行到  

Compound statement missing  分程序漏掉

Conflicting type modifiers  不明确的类型说明符 

Constant expression required  要求常量表达式   

Constant out of range in comparison  在比较中常量超出范围  

Conversion may lose significant digits 转换时会丢失意义的数 

Could not find file ''xxx''  找不到XXX文件  

Declaration missing   说明缺少

Declaration syntax error  说明中出现语法错误   

Default outside of switch  Default出现在switch语句之外 

Define directive needs an identifier  define命令需要标识符  

Division by zero  用零作除数   

Do statement must have while  Do语句中需要while部分 

Enum syntax error  枚举类型语法错误   

Enumeration constant syntax error  枚举常数语法错误  

Error directive: xxx  错误的编译预处理命令xxx  

Error writing output file  写输出文件错误  

Expression syntax error  表达式语法错误  

Extra parameter in call  调用时出现多余参数  

File name too long  文件名太长  

Function definition out of place  函数定义位置错误 

Function should return a value  函数必需返回一个值  

Hexadecimal or octal constant too large  16进制或8进制常数太大  

Illegal character ''x''  非法字符x  

Illegal initialization  非法的初始化  

Illegal octal digit  非法的8进制数 

Illegal pointer subtraction  非法的指针相减  

Illegal structure operation  非法的结构体操作  

Illegal use of floating point  非法的浮点运算 

Illegal use of pointer  指针使用非法   

Improper use of a typedef symbol  类型定义符号使用不恰当  

In-line assembly not allowed  不允许使用行间汇编  

Incompatible storage class  存储类别不相容  

Incompatible type conversion  不相容的类型转换  

Incorrect number format  错误的数据格式 

Incorrect use of default  default使用不当 

Invalid indirection  无效的间接运算  

Invalid pointer addition  指针相加无效  

Irreducible expression tree  无法执行的表达式运算  

Lvalue required  需要左值   

Macro argument syntax error  宏参数语法错误  

Macro expansion too long  宏的扩展以后太长   

Mismatched number of parameters in definition  定义中参数个数不匹配   

Misplaced break  此处不应出现break语句

温馨提示:内容为网友见解,仅供参考
第1个回答  2017-12-26

运算符优先级问题,=号的优先级低于?:运算符,
i == n?head->next=NULL:head->next = p;相当于(i == n?head->next=NULL:head->next) = p;
head->next = p需要用括号括起来,改成
i == n?(head->next=NULL):(head->next = p)

#include<stdio.h>
#include<string.h>
char a[10];
void fun(char a);
void main()
{
int k;
scanf("%f",a)
fun(a);
for(k=0;k<10;k++)
printf("%f\n",a[k]);
}
void fun(char a)
{
int i,j;
char t;
for(i=0;i<9;i++)
for(j=0;j<9-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];这一行提示错误:left operand must be l-value
a[j+1]=a[j]; 还有这一行提示错误:left operand must be l-value
}

C编译提示“lvalue required”怎么办?
lvalue required :需要左值。C语言编译常见错误提示 Ambiguous operators need parentheses 不明确的运算需要括号 Ambiguous symbol ''xxx'' 不明确的符号 Argument list syntax error 参数表语法错误 Array bounds missing 丢失数组界限符 Array size too large 数组尺寸太大 Bad character in parameter...

c语言中lvalue required as left operand of assignment是什么意思?
c语言 提示:lvalue required as left operand of assignment,是设置错误造成的,解决方法如下:1、首先打开C语言编程软件,来编写一个程序。2、对写好的程序进行编译,发现弹出窗口出现Errors。说明程序有错误要进行改正。3、按照这条准则可以发现程序中第六行b=36,这条语句中最后不是以分号(;)结尾...

我的这个c语言中lvalue required是什么意思,出什么问题了
给你点建议条件判断最好这样写while(1==fabs(y3)),;这样便于在编译时检查是否有错,在这如fabs不是函数是变量就可能不会出错,但可能会造成死循环。比如:whil(b=1);这里面条件始终成立。 b是变量。

C语言出现lvalue required in function main的问题,求解!
你的最后两个printf里需要有%s printf("\\nThe strings is:%s",a); printf("\\nThe change strings is:%s",b); 如果还有错误,请将编译器的报错内容完整贴上来。

lvalue required in function main错误是什么意思?
主函数main需要有返回值:修改如下:方法1:在main()前加 void,如:void main()方法2:在main()加 int ,并在主函数结束位置加语句return 0;

C++编译出错lvalue required as left operand of ass...?
错误lvalue required as left operand of assignment的意思是,赋值运算符需要一个左值运算数。出错误的语句(double)earth-=b;中earth应该是左值,但是更高优先级的(double)强制类型转换运算,返回强制类型转换后的结果,使其变成了右值()错误重现 解决方法是去掉(double)

C语言 lvalue required错误问题
字符数组赋值不要用=,除了初始化的时候 应该用strncpy或者strcpy函数 strcpy(p->name,"ZHANG");

在c语言调试中 出现错误提示信息 Lvalue required in function fun 是...
函数 fun 需要左值。 左值 = 有效的内存地址。a = 12 \/\/ a 是左值 12 = 13 \/\/ 12 不是有效的左值,因为不能被改变

arrays.c:183:20: error: lvalue required as left operand of assignme...
赋值操作符的左操作数要求是左值。(int*)&four_ints=heap_array;这行取一个变量的地址不能对其赋值。

编译显示[Error] lvalue required as increment operand
这两个运算符C语言提供的增1运算符和减1运算符,它们都是单目运算符,只需要一个操作数,但操作数只能是变量,不能是常量或表达式。至于你说的它们的使用形式,只能跟一个变量搭配使用,作前缀运算符或后缀运算符,但是只要是变量就行。记住它们的作用是使变量的值增加1 个单位或减少1个单位,而并是...

相似回答