字节顺序如何影响C ++中的枚举值?
枚举的大小是否取决于有多少枚举,因此一些枚举是1个字节,而其他枚举是2或4个字节?
如何从主机字节顺序将枚举值放入网络字节顺序?
答案 0 :(得分:1)
枚举取决于编译器。它们可以是1,2或4个字节(请参阅here)。它们应该具有与它们所使用的平台相同的字节顺序。
要将枚举值放入特定的字节顺序,您需要知道您所使用的系统是什么以及网络期望的是什么。然后像对待int那样对待。有关转化的帮助,请参阅here。
答案 1 :(得分:1)
Endianness影响枚举的次数不会少于或少于其他整数类型。
尺寸的唯一保证是枚举必须能够保持int
的值;编译器可以根据定义的成员自由选择实际大小(免责声明:对于C来说肯定是这样,对C ++来说不是100%肯定;我会检查......)
答案 2 :(得分:0)