这个陈述在C中做了什么?

时间:2014-06-30 19:42:35

标签: c

您能否向我解释一下这句话x^=y在C中的作用是什么? 我已经知道插入字符意味着XOR,但是在等号之前放入插入符号使我感到困惑。

4 个答案:

答案 0 :(得分:4)

这是一个快捷操作,就像

一样
x += 1; // same as x = x + 1
x ^= y; // same as x = x ^ y

答案 1 :(得分:3)

^bitwise XOR运算符。表达式x ^= y表示程序将计算x ^ y,然后将x设置为该值。

答案 2 :(得分:2)

x ^= yx = x ^ y相同,条件是x仅评估一次。

这些运营商的完整列表包括:

x *= y
x /= y
x %= y
x += y
x -= y
x <<= y
x >>= y
x &= y
x ^= y
x |= y

答案 3 :(得分:1)

^=是复合赋值运算符。

x^=y

相当于

x = x ^ y

x仅被评估一次。