c_cpp 使用按位“异或”运算来交换C中的int值的示意图。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp 使用按位“异或”运算来交换C中的int值的示意图。相关的知识,希望对你有一定的参考价值。

// Adapted from answer on Quora.
// 
// "Can I swap() without any extra variable in C?"
//
// https://is.gd/wpsOlP

#include <stdio.h>

int main(int argc, char** argv) {
	int a = 37;
	int b = 40;

	printf("a: %d\n", a);
	printf("b: %d\n", b);

	printf("Swap!\n");

	// Exclusive OR bit operation.
	a ^= b;
	b ^= a;
	a ^= b;

	printf("a: %d\n", a);
	printf("b: %d\n", b);

	return 0;
}

以上是关于c_cpp 使用按位“异或”运算来交换C中的int值的示意图。的主要内容,如果未能解决你的问题,请参考以下文章

c语言的按位运算符怎么操作!?

最简单的交换两个数

C语言中位移位运算符?

C语言位运算符:与或异或取反左移与右移详细介绍

按键^异或运算符

JavaSE7基础 位运算 int类型变量进行 按位 与或非异或