我的问题非常简单而且微不足道,但我没有找到明确的答案。
如果有C数组char a[2]
,其中最不重要的字节a[0]
或a[1]
换句话说,低地址或更高地址?
答案 0 :(得分:5)
“重要性”的概念仅在被谈论的单元(例如,比特或字节)参与表示由多于一个这样的单元组成的值的时才有意义。正如在indiv的评论中一样,2个char
对象的数组作为单个值没有固有的含义。如果你选择这样使用它,你可以自己解释两个char
并将它们作为一个整数赋予它们。
答案 1 :(得分:2)
这取决于用法,所以基本上你定义它。
例如,如果使用char a[2]
包含2位二进制数(00,01,10,11之一),则可以定义LSB位在右侧,即{ {1}},因此数字01将由字符串“01”表示(a[1]
= 0,a[0]
= 1)。在许多情况下,这种选择似乎很自然
但是,您可以通过相反的定义确定您的需求更适合,并且您将定义您的LSB位在左侧,在这种情况下,数字01将由字符串“10”表示。