x=5%=2 这个赋值运算哪里错了?为什么不能运行?

5%=2是5%2的意思吗?

首先,你要明白表达式的优先级问题,表达式的执行方式是,优先从左至右执行的,但是大多数运算符结合性是从左到右,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。
也就是说,先执行5%=2等同于5=5%2,但是,你会发现,在这里5的地址是常量区,无法被赋值,所以会报错,你应该写成y=5,x=y%=2
温馨提示:内容为网友见解,仅供参考
第1个回答  2019-08-28
x=5%=2 代表含义为x=5=5%2
赋值运算符(包括复合运算符)左边必须为变量,上面复合运算符左边是5(常量),所以会出错。
可以写成
x=5%2本回答被网友采纳

x=5%=2 这个赋值运算哪里错了?为什么不能运行?
首先,你要明白表达式的优先级问题,表达式的执行方式是,优先从左至右执行的,但是大多数运算符结合性是从左到右,只有三个优先级是从右至左结合的,它们是单目运算符、条件运算符、赋值运算符。也就是说,先执行5%=2等同于5=5%2,但是,你会发现,在这里5的地址是常量区,无法被赋值,所以会报错...

为什么x=j>0的赋值语句是正确的,这要怎么看
根据运算符先后顺序可以这么看:x=(j>0)先看j>0,这是个条件表达式,如果j确实大于0,那么这个表达式的值就是1,否则就是0。然后把这个表达式的值赋值给x,也就是0或者1。所以这句赋值语句是正确的。

x=y==5与x=n%2.5。在C语言的赋值表达式中为什么前一个是正确的,后一...
y==5这是一个关系表达式,如果y=5返回真1,否则返回假0,且关系运算符的优先级高于赋值运算符,所以x=y==5相当于x=(y==5)是正确的 表示取余运算,他的两个变量都必须是整数,所以后一个不正确

x>y=2在c语言中为什么有语法错误
逻辑判断运算符优先级高于赋值运算符,先计算x>y,得到一个逻辑真或加的常数,然后再执行赋值,对常数赋值是不合法的。

C语言中,X=(int)X 是什么意思啊···求各位高手
括号运算符是实现强制类型转换功能,意思是将x的值转换为int型后再赋值给左边的x,如果右边的x=2.32,赋值结果,x的值为2. 本回答由提问者推荐 举报| 答案纠错 | 评论 14 0 conradliu 采纳率:36% 擅长: C#\/.NET C\/C++ 其他回答 将x变成整型,简单点就是去掉x后面的小数 热心网友| 发布于2011-07-26 ...

x,y 都是int, x++=y++ 为什么错?
赋值运算需要左值,而x++不是左值。x++的本意是使用x的值,在使用后将x自加1,那么如果把x++用在赋值运算的左边的话,赋值时是赋给原先的x还是自加后的x呢?显然是未定义的,所以这种操作是错误的。下面转一篇关于左值和右值的文章,相信会对你帮助很大的。左值(lvalue)和右值(rvalue)是编程中两个非常基本的概念...

...a[10]={1,2, ,4};执行完该定义语句后,a[1]的值是2 为什么错...
题目中的数据没有错误的话,那么赋值语句是错误的,因为在数组赋值的过程中有一个空格,这是C语言程序不允许的,所以说该语句执行完成后a[1]的值是2是不对的,因为会编译报错不会执行。题目中的空格是多余的话,那么a[1]的值是2就没有错误,也就是说答案是错误的。数组中的所有元素都具有相同...

x––=2什么意思(c语言)
请问你问的是x––=2(有两个“ - ”号),还是x–=2(只有一个减号“ - ”)若是第二种则相当于x=x-2;若是第一种则语法错误,是错误的赋值运算。

赋值运算符的意思
=还可与其他运算符(包括算术运算符、位运算符和逻辑运算符)相结合,扩展成为功能更加强大的赋值运算符,如表1所示。扩展后的赋值运算符将使得赋值表达式的书写更加优雅和方便。表1Python扩展赋值运算符 运算符 说 明 用法举例 等价形式 = 最基本的赋值运算 x = y x = y += 加赋值 x += y x...

如何在批处理命令行中进行逻辑运算? 比如我要判断一个变量a的值,如果...
1 2 3 4 5 6 7 8 92 3 4 5 6 7 8 9 103 4 5 6 7 8 9 10 1110、nul nul的意思就是空设备,>nul的意思就是将运行的结果返回至空设备,也就是不返回运行结果的意思,比如,你先打开命令提示符,输入 echo 1 ,意思就是显示1,然后你回车,然后再输入 echo 1>nul 再回车,看出来有什么不同了吧...

相似回答