/*
* Author:余性笃厚
* Description:将一个16位的正数进行左旋转和右旋转 “n”位
* Explanation:如 0x2345,旋转4位,左旋转为 0x5234 右旋转为 0x3452
*/
/*
* 1. 16位的数就是 2个字节直接用 unsigned short;
* 2. 移位的基准要知道左移以高位为基准,右移以低位为基准;
* 3. 逻辑左移高位舍去,低位补 0;逻辑右移低位舍去,高位补 0。
*/
#include <stdio.h>
/* 左旋转 */
/*
0x0234 <-- 0x2345 >> 4
0x5000 <-- 0x2345 << 12
位或 | ------
0x5234
*/
unsigned short rotatedLeft(unsigned<
C语言 - 将一个16位的正数进行左旋转和右旋转 “n”位
最新推荐文章于 2022-05-06 11:27:10 发布