Enum如何在C上分配内存?

Nac*_*low 6 c assembly enums

我正在尝试使用C和汇编(intelx8086)语言.

我也在使用一个班级,我的一个朋友给了我一个

typedef enum data_10 {a=0,b=7,c=10,} data_10_type;
Run Code Online (Sandbox Code Playgroud)

我想按位使用这个类(AKA构造它/在Assembly上销毁它).我的问题是,"枚举"需要多少内存?

Gre*_*son 6

虽然它可能因编译器而异,但enum通常采用相同的大小int.但是,您可以随时使用sizeof( data_10_type );


mah*_*mah 1

枚举实际上根本不占用任何内存;编译器可以理解它,并且在编译过程中使用正确的数字。它是一个 int,其大小取决于您的系统。