小编HBP*_*HBP的帖子

Java内联int swap.为什么这只适用于Java

我被要求在不使用临时变量或使用xor的情况下编写交换,我想出了这个.
在Java中,这可行,但在C/C++中,这不起作用.

我的印象是,由于'|'左侧'a'的值,这总是有效的 将被存储在寄存器中,然后分配给'a'将否定对'b'的指定值的影响.

int a = 5;
int b = -13;
b = a | (0 & (a = b));
Run Code Online (Sandbox Code Playgroud)

c++ java puzzle swap inline

4
推荐指数
1
解决办法
255
查看次数

标签 统计

c++ ×1

inline ×1

java ×1

puzzle ×1

swap ×1