c++ - 在 C++ 中验证 3 位环绕旋转

标签 c++ c rotation

<分区>

我需要在 C++ 中围绕旋转做一个 3 位左端。

到目前为止我有:

A[i] = (A[i] << 3)|(A[i] >> 5);

A 是一个无符号字符数组。

这是正确的吗?如果不是,我该如何解决?还有什么是最好的测试方法,看看这是否正确?

谢谢

最佳答案

我觉得不错。

如果你真的想测试它,手工计算出一堆输入和输出,然后检查你的程序是否产生了它们。

或者设计另一种您绝对确定会产生结果的方法(例如将 unsigned char 转换为二进制字符串,旋转字符串,转换回 unsigned char)并将两者与所有 256 个可能的方法进行比较输入。

关于c++ - 在 C++ 中验证 3 位环绕旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17777686/

相关文章:

c - pebblekit js通过appmessage将数组发送到pebble C

c - 没有初始化点的指针在哪里?

android - 如何检测屏幕旋转?

objective-c - Sprite Kit 按 Y 转动节点

c++ - 在 C++11 中初始化 C 字符串?

c++ - 在特定数量的条目后停止 XML 解析

java - C++ JMS 客户端或 C++/C SOAP 客户端

java - 需要有效地实现以下公式吗?

C - 对数组描述进行排序

javascript - JS 通用应用程序 "Unable to get property ' 样式'未定义或空引用”