0
我有8个位置的int数组,代表8位。C++ - 将8个位置的int数组转换为char
int zBits[8]={0, 1, 1, 1, 1, 0, 1, 0};
zBits阵列是用比特表示字符 “Z”(十六进制 “7A”)(http://www.utf8-chartable.de/)。
如何使用C++将“int”数组(zBits)转换为“z”字符?
我有8个位置的int数组,代表8位。C++ - 将8个位置的int数组转换为char
int zBits[8]={0, 1, 1, 1, 1, 0, 1, 0};
zBits阵列是用比特表示字符 “Z”(十六进制 “7A”)(http://www.utf8-chartable.de/)。
如何使用C++将“int”数组(zBits)转换为“z”字符?
的最简单的方法做,这是直接:
char z = (zBits[7] ) |
(zBits[6] << 1) |
(zBits[5] << 2) |
(zBits[4] << 3) |
(zBits[3] << 4) |
(zBits[2] << 5) |
(zBits[1] << 6) |
(zBits[0] << 7);
如果你愿意,你可以再形成一个循环,这将是稍短这一点。