如何交换两个变量?
这个问题可能看起来很傻,也不令人讨厌。请参阅以下代码来交换两个整数,
乍一看,我们可能认为代码没有问题。然而,当被提示选择 XOR 交换逻辑的原因时,该人的线索较少。也许任何交换操作都可以满足一些极端情况的需要。
避免在生产软件中使用花哨的代码片段。他们创造了运行时的惊喜。我们可以在上面的代码中观察以下注释
void myswap(int *x, int *y)
{
if (x != y)
{
*x^=*y^=*x^=*y;
}
}