首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

枚举类型内存空间有关问题,求教~

2012-03-18 
枚举类型内存空间问题,求教~~我定义了一个枚举类型,请问它的内存空间是多少呢?typedef enum{UP,DOWN,RIGHT

枚举类型内存空间问题,求教~~
我定义了一个枚举类型,请问它的内存空间是多少呢?
typedef enum{
  UP,
  DOWN,
  RIGHT,
  LEFT
}DIRECT;

编译器此时为它分配内存么?大小是多少?谢谢,请指教。。
为什么printf("%d\n",sizeof(DIRECT));结果是4。
我认为应该为它分配4个int的大小,因为4个int值都存在,因该说4×4 = 16啊


[解决办法]
它没有空间,它只是定义了一些常量而已。你不能用struct的相同的思路去认为它,对于sizeof(DIRECT),因为可以将DIRECT看作是int,所以算出来的是4

[解决办法]

C/C++ code
typedef enum{         UP,         DOWN,         RIGHT,         LEFT }DIRECT; 

热点排行