Assignment运算符的实现

时间:2015-06-08 21:48:35

标签: c assignment-operator

我能否以级联的方式编写赋值运算符。以下是两个语句如何编写它们

 total_marks/=1000;
 total_marks*=100;

我们可以做一些像我们放置100的地方

total_marks*=total_marks/=1000;     

2 个答案:

答案 0 :(得分:4)

没有。 /=*=运算符的结果不会返回左值,因此不能用于其他赋值的左侧。简单,明显,可读有什么问题:

total_marks = (total_marks / 1000) * 100;

答案 1 :(得分:1)

在C ++中,您可以编写例如

( total_marks/=1000 ) *= 100;

但是在C中,这段代码无法编译。

在C(和C ++)中,您可以使用逗号运算符

编写以下方法
total_marks/=1000, total_marks *= 100;

我的意思是如果你需要表达式。