用十六进制枚举或整数(ASCII)枚举填充字节数组?

用十六进制枚举或整数(ASCII)枚举填充字节数组?,c,arrays,hex,byte,unsigned-char,C,Arrays,Hex,Byte,Unsigned Char,我需要用可能的枚举来填充c语言中的字节数组 下面是我如何声明字节数组的: unsigned char byteArray[6]; 现在我犹豫我的枚举是否应该像MyEnum1或MyEnum2: enum MyEnum1 { A1 = 0, B1 = 1, C1 = 2}; enum MyEnum2 { A2 = 0x00, B2 = 0x01, C2 = 0x02}; 目的是这样的: byteArray[0]=A1; byteArray[1]=B1; byteArray[2]=C1; byt

我需要用可能的枚举来填充c语言中的字节数组

下面是我如何声明字节数组的:

unsigned char byteArray[6];
现在我犹豫我的枚举是否应该像
MyEnum1
MyEnum2

enum MyEnum1 { A1 = 0, B1 = 1, C1 = 2};
enum MyEnum2 { A2 = 0x00, B2 = 0x01, C2 = 0x02}; 
目的是这样的:

byteArray[0]=A1;
byteArray[1]=B1;
byteArray[2]=C1;
byteArray[3]=A2;
byteArray[4]=B2;
byteArray[5]=C2;
那么,对于我的枚举是否应该包含十六进制、整数或其他类型的数据,有什么建议吗


谢谢大家!

没关系。您的两个枚举:

enum MyEnum1 { A1 = 0, B1 = 1, C1 = 2};
enum MyEnum2 { A2 = 0x00, B2 = 0x01, C2 = 0x02}; 
严格等效,正如
inti=0x5
严格等效于
inti=5
。如果要使用常量的十进制或十六进制表示,则由您决定

和顺便说一句,而不是:

unsigned char byteArray[6];
您可能应该:

enum MyEnum1 byteArray[6];

没关系。您的两个枚举:

enum MyEnum1 { A1 = 0, B1 = 1, C1 = 2};
enum MyEnum2 { A2 = 0x00, B2 = 0x01, C2 = 0x02}; 
严格等效,正如
inti=0x5
严格等效于
inti=5
。如果要使用常量的十进制或十六进制表示,则由您决定

和顺便说一句,而不是:

unsigned char byteArray[6];
您可能应该:

enum MyEnum1 byteArray[6];

没关系。您的两个枚举:

enum MyEnum1 { A1 = 0, B1 = 1, C1 = 2};
enum MyEnum2 { A2 = 0x00, B2 = 0x01, C2 = 0x02}; 
严格等效,正如
inti=0x5
严格等效于
inti=5
。如果要使用常量的十进制或十六进制表示,则由您决定

和顺便说一句,而不是:

unsigned char byteArray[6];
您可能应该:

enum MyEnum1 byteArray[6];

没关系。您的两个枚举:

enum MyEnum1 { A1 = 0, B1 = 1, C1 = 2};
enum MyEnum2 { A2 = 0x00, B2 = 0x01, C2 = 0x02}; 
严格等效,正如
inti=0x5
严格等效于
inti=5
。如果要使用常量的十进制或十六进制表示,则由您决定

和顺便说一句,而不是:

unsigned char byteArray[6];
您可能应该:

enum MyEnum1 byteArray[6];

在您的情况下,无论您将如何组织您的
enum
。您可以用这两种方法进行操作,结果将是相同的。

在您的情况下,无论您如何组织
枚举
。您可以用这两种方法进行操作,结果将是相同的。

在您的情况下,无论您如何组织
枚举
。您可以用这两种方法进行操作,结果将是相同的。

在您的情况下,无论您如何组织
枚举
。你可以用两种方法来做,结果是一样的。

谢谢你的回答+谢谢你的回答+谢谢你的回答+谢谢你的回答+谢谢你的回答+谢谢你的回答+谢谢你的回答+谢谢你的回答+1.