C向量的位表示

时间:2016-08-30 10:41:20

标签: c vector bit endianness

在little endian中工作,这是一个令人兴奋的(包括eof,如果有的话)这样的C向量的位表示?

unsigned char vet[] = {0x0f, 0x05};

2 个答案:

答案 0 :(得分:2)

unsigned char s向量的位表示不依赖于字节序,因为char类型是单字节,而字节序则告诉您如何在内存中排列多个字节。

因此,0x0f位于内存中早于0x05的地址,生成

0000111100000101
  

如果有[one]那么包括eof

与使用C字符串初始化的C字符串和数组不同,使用花括号初始值设定项初始化的数组没有结束标记。

答案 1 :(得分:0)

好吧,如果vector是:

unsigned char vet[] = { 0xBC,0xFF,0x01 }

位表示应该是:

101111001111111100000001

它的长度是24位,因为没有结束标记,rigth?