将二进制值存储在C中的数组中

时间:2011-08-04 15:05:23

标签: c arrays binary

我希望将一些二进制值存储在C中的数组中。如何完成它以及如何访问二进制数的任何位。

如果我不清楚发布疑问,请告诉我。

1 个答案:

答案 0 :(得分:3)

将您的值存储在普通数组中并编写一个简单的函数,该函数将选择其位的正确元素状态,如

int get_bit_from_array( unsigned char *A, int element, int bit ) {
    return A[element] &  ( 1 << bit ) ;                 
}

甚至

int get_bit_from_array( unsigned char *A, int bit_absolute) {
    int element = bit_absolute / 8;
    int bit = bit_absolute % 8;
    return A[element] &  ( 1 << bit ) ;                 
}