电子商务网站规划书,wordpass建设网站流程,audio for wordpress,wordpress cdn 非插件题目#xff1a;写一个宏#xff0c;可以将一个整数的二进制位的奇数位和偶数位交换。 假设我们举例#xff1a;10
那么他的二进制就是#xff1a;00000000 00000000 00000000 00001010 交换以后组成的新的数就是 5 怎么用写这个宏呢#xff1f; 1.分别拿出奇数位和偶数位… 题目写一个宏可以将一个整数的二进制位的奇数位和偶数位交换。 假设我们举例10
那么他的二进制就是00000000 00000000 00000000 00001010 交换以后组成的新的数就是 5 怎么用写这个宏呢 1.分别拿出奇数位和偶数位 1.1 用按位与拿到奇数位的值 1.2 用按位与拿到偶数位的值
2.用位移操作符取奇数位的向左移动一位取偶数位的向右移一位
ps:这样操作是没错的不会因为移动而丢失数值因为取奇数的最左边一定是0不可能是1同理取偶数位的也同样是
这里举取偶数的为例 因为一个整形是32位也就是4个字节
所以我们转换成代码就要 3.把取奇偶位的值按位或 最后注意宏不要吝啬括号