怎样解决expression must be a modifiable lvalue的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎样解决expression must be a modifiable lvalue的问题相关的知识,希望对你有一定的参考价值。

我定义的一个数组A[10],我在一段程序中有A++,就出现这个错误,求解决方法。

expression must be a modifiable lvalue的解决方法:

定义一个新的指针:unsigned char * dat;dat =data;之后再全部替换即可。

expression must be a modifiable lvalue意思为:表达式必须是一个可修改的值,而数组A[10]已经实现定义好了,不能使用A++表达式对其数组大小进行修改。所以只有增加一个指针即可。

扩展资料:

指针的相关要求规定:

1、指针的机制比较简单,其功能可以被集中重新实现成更抽象化的引用(reference)数据形别。许多编程语言中都支持某种形式的指针,最著名的是C语言,但是有些编程语言对指针的运用采取比较严格的限制,如Java一般避免用指针,改为使用引用。

2、指针可以被重新赋值而reference则总是指向最初或地的对象。必须使用reference的场合.。Operator[] 操作符 由于该操作符很特别地必须返回 [能够被当做assignment 赋值对象] 的东西,所以需要给他返回一个 reference。

3、指针从本质上讲就是存放变量地址的一个变量,在逻辑上是独立的,它可以被改变,包括其所指向的地址的改变和其指向的地址中所存放的数据的改变。

参考资料来源:百度百科-指针

参考技术A expression must be a modifiable lvalue 这句话的意思是:表达式必须是一个可修改的值,而数组A[10]已经实现定义好了,不能使用A++表达式对其数组大小进行修改,具体的解决方法根据你使用的编程语言的不同而不同本回答被提问者采纳

以上是关于怎样解决expression must be a modifiable lvalue的问题的主要内容,如果未能解决你的问题,请参考以下文章

Expression must be a modifiable lvalue error in this code的原因是啥?

C语言错误:expression must be a modifiable lvalue

Super expression must either be null or a function, not undefined

The expression being assigned to optional parameter `v2' must be a constant or default value(示例代

verilog 中编译错误:port must be connected to a structural net expression

KEIL4里面#137expression must be a modifiable lvalue问题