C语言中,a%=b%=4是什么意思。。。。?
展开全部
%=是取模 赋值 运算符,a%=4的意思就是a=a%4 ,%是取模运算符,
这2者差别在于%只进行计算并且运算顺序为从左到右。而%=则进行计算和赋值但是%=却没有运算顺序,因为它是先将a%=4拆成a=a%4后再进行计算,所以你觉得它该如何设置一个计算顺序呢?
所以对于4%4%3 我们知道是先进行4%4,得出结果后再把4%4的结果进行%3的操作
但是我们却无法确保a%=b%=4是如何操作的,所以不应当这样写代码,也许他在一个操作系统上是先进行b%=4 然后再进行a%=b, 而在另一个系统上也许就先a%=b然后再用a%=4,或者就是a%=b然后进行b%=4,所以这串代码应当是不可取的
这2者差别在于%只进行计算并且运算顺序为从左到右。而%=则进行计算和赋值但是%=却没有运算顺序,因为它是先将a%=4拆成a=a%4后再进行计算,所以你觉得它该如何设置一个计算顺序呢?
所以对于4%4%3 我们知道是先进行4%4,得出结果后再把4%4的结果进行%3的操作
但是我们却无法确保a%=b%=4是如何操作的,所以不应当这样写代码,也许他在一个操作系统上是先进行b%=4 然后再进行a%=b, 而在另一个系统上也许就先a%=b然后再用a%=4,或者就是a%=b然后进行b%=4,所以这串代码应当是不可取的
追问
计算机全国2级C等级考试,有一道题目就是这样的,那怎么解释?
追答
是解释题还是选择题呢?
展开全部
%=是双目运算符,它的结合方向是自右至左.b%=4表示b=b%4(%左右两边均为整型数据),这个题先求b=b%4,然后再求a=a%
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
a%=b%=4
等价于:b=b%4;
a=a%b;
等价于:b=b%4;
a=a%b;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
C有这样的写法吗?这貌似是Shell的东东呀。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询