c/c++语言开发共享错误:左值作为赋值的左操作数所需的左值(C)

我看到了这个问题的许多不同的答案,看了很多,但我找不到问题的答案。

我得到的错误是

bitarray.c:27:19: error: lvalue required as left operand of assignment (newArr << i) ^= 1; 

有任何想法吗? 谢谢

    您正尝试从操作中为结果分配另一个结果。 请尝试以下正确的方法:

     newArr = (newArr << i) ^ 1; 

    这个想法是你必须有一个有效的lvvalue,并且“<<”的临时结果不是有效的。 你需要一个像newArr这样的变量。 以下关于SO的答案解释了与这种情况相关的许多术语:

    什么是rvalues,lvalues,xvalues,glvalues和prvalues?

    希望我对这个问题有所了解!

    “<<”是二进制运算符,就像“+”或“ - ”。 需要将其分配给变量。 对于Eg。 你不能只写这个+ b; 正确的方法是c = a + b;

      以上就是c/c++开发分享错误:左值作为赋值的左操作数所需的左值(C)相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/541835.html

      (0)
      上一篇 2021年1月4日
      下一篇 2021年1月4日

      精彩推荐