gpt4 book ai didi

c - 获取有关枚举类型的信息

转载 作者:行者123 更新时间:2023-12-01 14:19:02 26 4
gpt4 key购买 nike

我有 2 种枚举类型:

typedef enum {a=0, a1=3, a2=5} NX;
typedef enum {c=-1, c1=4, c2=7} NY;

我想写一个表达式,给定一个枚举类型/实例的名称,它会返回它的第一个元素的值。一种可能的解决方案是始终添加固定名称的元素,如

typedef enum {a=0, first=a, a1, a2, last=a2}

但是,也许有更优雅的方式。

有没有办法在运行时获取枚举中的元素数量?

最佳答案

不,sizeof() 不适用于枚举。无法在运行时获取元素数量。
有一种流行的方法来检查枚举的最后一个元素值以确定给定枚举中元素的数量,即:

enum Type {A = 0, B, C, LAST};
printf("'Type' enum has %d number of elements", LAST);

关于c - 获取有关枚举类型的信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11984822/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com