不使用临时变量交换两个整数

回复
头像
C艹艹
崭露头角
崭露头角
帖子: 26
注册时间: 2016年09月23日 11:32
联系:

不使用临时变量交换两个整数

帖子 C艹艹 »

int a = 526;
int b = 793;

a = a ^ b;
b = a ^ b;
a = a ^ b;
printf("%d %d\n", a, b);
ccc
初来炸道
初来炸道
帖子: 7
注册时间: 2016年09月18日 21:50
联系:

Re: 不使用临时变量交换两个整数

帖子 ccc »

#include <iostream>

int main() {
int x = 777;
int y = 221;
x = x + y;
y = x - y;
x = x - y;
std::clog << x << ", " << y << std::endl;
std::cin.get();
return 0;
}
同样没有临时变量,也不需要比特位操作,性能不比比特位低
回复

在线用户

正浏览此版面之用户: 没有注册用户 和 2 访客