这个左操作数不是左值吗?

这个14行判断直角三角形的条件等式等网上的一样,怎么这里出线了左值报错啊?

img

首先,这个代码不管报不报错,都有点问题,因为a == b == c,这种写法,在C中等同于(a == b的布尔值,也就是0或1) == c,是不能连写等于号的(尽管在Python中是可以的),只能写作a == b && b == c,后面的代码同理。
但是,只看截图的代码好像没有赋值的问题,有一些似乎没拍全,是不是哪里==写成了=了?

左值就是在赋值中可以放在赋值操作符两边的值,比如: int a = 1; double b = 2.0 a = b; b = a; 这里a和b都是左值,一切变量都是左值。所以左边应该是一个变量或者指针,不能是a*a的表达式。望采纳

a=b
a就是左值
如果报错说左值有问题,说明你把==误写为=了
那么左值本来应该是个变量,现在是个表达式,它不能被赋值,就报错了

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^