我希望将一些二进制值存储在C中的数组中。如何完成它以及如何访问二进制数的任何位。
如果我不清楚发布疑问,请告诉我。答案 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 ) ;
}