You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C语言中二进制^运算符(i ^ j)的作用是什么?

C语言中(i ^ j)的含义解释

在C语言里,^是按位异或运算符,和你猜测的位移操作(位移是<<左移、>>右移)完全不同,它的作用是对两个整数的二进制位进行逐位异或运算。

运算规则

对两个数的每一个对应二进制位执行如下操作:

  • 如果两个位相同(都是0或都是1),结果位为0
  • 如果两个位不同(一个0一个1),结果位为1

示例

比如i = 3(二进制011),j = 5(二进制101):

011
^ 101
------
  110  // 对应十进制的6

所以3 ^ 5的结果是6。

常见实用场景

  • 无需临时变量交换两个整数:i = i ^ j; j = i ^ j; i = i ^ j;
  • 快速判断两个整数是否相等:若i ^ j == 0,则i和j的值相等
  • 翻转某个数的指定二进制位(比如和一个特定掩码异或)

内容的提问来源于stack exchange,提问作者Aidan Howard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 20:32:33