使用按位运算符交换整数中的第一个和最后一个数字

Ami*_*mar -4 c algorithm bit-manipulation

我在接受采访时被要求使用按位运算符交换整数中的最后一位和第一位数.尝试了很多,但我找不到解决方案.我怎样才能做到这一点?

Pen*_*One 7

使用int digits = log10(x)得到的位数.

使用int first = x / pow(10,digits)得到的第一位.

使用int last = x % 10得到的最后一位.

把它们放在一起就可以了

int swapped = x + (last - first) * pow(10,digits) + (first - last)