相关疑难解决方法(0)

C中枚举的大小是多少?

我正在创建一组枚举值,但我需要每个枚举值为64位宽.如果我没记错的话,枚举通常与int的大小相同; 但是我认为我读过某个地方(至少在GCC中),编译器可以使枚举成为保持其值所需的任何宽度.那么,有可能有一个64位宽的枚举?

c enums

138
推荐指数
3
解决办法
17万
查看次数

C 中的模式设置:枚举、常量、定义

我读过有关该主题的几个问题:

我知道在宏上通常首选#define枚举,以获得更好的封装和/或可读性。另外,它允许编译器检查类型以防止出现某些错误。

const声明介于两者之间,允许类型检查和封装,但更混乱。

现在我在内存空间非常有限的嵌入式应用程序中工作(我们经常必须争取字节节省)。我的第一个想法是常量比枚举占用更多的内存。但我意识到我不确定常数将如何出现在最终固件中。


例子:

enum { standby, starting, active, stoping } state;
Run Code Online (Sandbox Code Playgroud)

问题

在资源有限的环境中,enumVS#define与 VSstatic const在执行速度和内存占用方面如何比较?

c embedded enums

2
推荐指数
1
解决办法
5397
查看次数

标签 统计

c ×2

enums ×2

embedded ×1