首页 > 其他 > 详细

编码 | 枚举变量使用技巧

时间:2021-01-13 23:43:30      阅读:34      评论:0      收藏:0      [点我收藏+]

枚举变量

  • C 标准实现中没有规定枚举变量占用的字节数

导致的问题:

  • 不同平台枚举变量所占用的字节数不一样(STM32等平台中只占1个字节、ARM-Linux平台占用4个字节);
  • 同一个结构体(包含枚举变量)在不同平台所占用的字节数不一样。

解决方法:

  • 编译平台层:通过 IDE 指定枚举变量所占用的字节数(kill软件可进行配置),通过配置编译器使得平台间保持一致;
  • 编码层:枚举变量定义自定义4字节的枚举值,编译器能够自动扩充,使得该枚举变量占用4个字节
typedef enum {
	ENUM_VALUE_0 = 0,
	ENUM_VALUE_1,
	...
	ENUM_VALUE_CONST = 10240000,///<The value should bigger than 65536.
} EXAMPLE_DEF_E;

编码 | 枚举变量使用技巧

原文:https://www.cnblogs.com/CristL/p/14274385.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!