簡體   English   中英

C ++-將8個位置的int數組轉換為char

[英]c++ - Convert an int array of 8 positions to char

我有一個8位的int數組,表示8位。

int zBits[8]={0, 1, 1, 1, 1, 0, 1, 0};

zBits數組是位中的字符“ z”(十六進制中的“ 7a”)( http://www.utf8-chartable.de/ )。

如何使用C ++在“ z”字符中轉換此int數組(zBits)?

最直接的方法是:

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);

如果願意,可以將其重新設置為一個循環,該循環會稍短一些。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM