宏实现奇数偶数位交换及offsetof

Posted 森明帮大于黑虎帮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了宏实现奇数偶数位交换及offsetof相关的知识,希望对你有一定的参考价值。

一、宏实现奇偶数交换

在这里插入图片描述
如上图所示:用X先按位与(01010101010101010101010101010101)就是55555555得到二进制数偶数位全部为0然后左移一位偶数位全部变成奇数位,且得到的二进制奇数位为0。
如上图所示,同理如上图所示:用X先按位与(10101010101010101010101010101010)就是aaaaaaaa得到二进制数奇数位全部为0然后右移一位奇数位全部变成偶数位,且得到的二进制偶数位为0。
两者在按位或那么就得到了交换的奇数偶数位

#

以上是关于宏实现奇数偶数位交换及offsetof的主要内容,如果未能解决你的问题,请参考以下文章

写一个宏,可以将一个整数的二进制位的奇数位和偶数位交换

写一个宏,可以将一个整数的二进制位的奇数位和偶数位交换

函数和宏实现交换二进制位

函数和宏实现交换二进制位

基础编程题之奇数位(偶数位)都是奇数(偶数)

ARC102D Revenge of BBuBBBlesort!