typedef enum { false, true }bool;
struct { bool value_set; int value; }
使用calloc分配此结构时会发生什么?枚举是否会被视为错误 默认值?由于calloc将内存设置为0。
答案 0 :(得分:0)
枚举是整数类型。如果您没有为它们分配值,则它们从0开始并增加。因此,你的typedef相当于
typedef enum { false = 0; true = 1; } bool;
因此,calloc会将value_set
设置为零,等于false
。