我如何知道枚举的大小Days
?它会等于7*4(sizeof(int)) = 28
??
The printf()
这给了我价值4
,怎么解释呢?
enum Days
{
saturday,
sunday ,
monday ,
tuesday,
wednesday,
thursday,
friday
} TheDay;
printf("%d", sizeof(enum Days));
我们也可以将其用作 (enum Days)(0),这类似于整数数组。如果大小等于 4 那么如何解释这种数组的行为?
在 C 中,所有枚举大多数时候都是整数类型int
,这解释了为什么sizeof(Days) == 4
为你。
要知道一个值中有多少个enum
你可以这样做:
enum Days
{
saturday,
sunday,
monday,
tuesday,
wednesday,
thursday,
friday,
NUM_DAYS
};
Then NUM_DAYS
将是枚举的数量Days
.
请注意,如果更改枚举的值,这将不起作用,例如:
enum Foo
{
bar = 5,
NUM_FOO
};
在上面的枚举中,NUM_FOO
将6
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)