相关疑难解决方法(0)

"在不使用第三个变量的情况下交换两个变量的值"中的潜在问题

我最近提出了这种方法来交换两个变量的值而不使用第三个变量.

a^=b^=a^=b

但是当我在不同的编译器上尝试上面的代码时,我得到了不同的结果,有些给出了正确的结果,有些则没有.

代码有什么严重错误吗?

c c++ swap operator-precedence

19
推荐指数
4
解决办法
4772
查看次数

在不使用第三个变量的情况下交换两个整数

我有一个赋值,我需要在不使用第三个变量的情况下交换两个整数.我不知道该怎么做.我该如何编码呢?

vb.net algorithm

8
推荐指数
3
解决办法
2万
查看次数

如何在不使用任何if条件,强制转换或其他变量的情况下交换两个整数变量?

有两个整数变量.您是否可以在不使用任何if条件的情况下交换这些整数变量,而无需转换,也不使用其他变量?例如:

int a = 10;
int b = 5;
Run Code Online (Sandbox Code Playgroud)

a > b总是.答案应该是a == 5b == 10

swap

6
推荐指数
2
解决办法
5414
查看次数

XOR交换算法和使用第三个变量交换之间有什么区别吗?

这两者之间有什么区别,比如一个更快还是更小?使用一个在另一个上的好处?

使用XOR运算符进行交换

int a, b;
a ^= b ^= a ^= b;
Run Code Online (Sandbox Code Playgroud)

使用第三个变量进行交换

int a, b, temp;
temp = a;
a = b;
b = temp;
Run Code Online (Sandbox Code Playgroud)

c swap xor

1
推荐指数
2
解决办法
171
查看次数

标签 统计

swap ×3

c ×2

algorithm ×1

c++ ×1

operator-precedence ×1

vb.net ×1

xor ×1