gpt4 book ai didi

c - 当您调用包含枚举类型的结构时会发生什么?

转载 作者:行者123 更新时间:2023-11-30 17:46:34 24 4
gpt4 key购买 nike

typedef enum { false, true }bool;

struct { bool value_set; int value; }

当使用 calloc 分配该结构时会发生什么?枚举是否会保持 false 作为默认值?由于calloc将内存设置为0。

最佳答案

枚举是整型。如果您不为它们分配值,它们将从 0 开始并增加。因此你的 typedef 相当于

typedef enum { false = 0; true = 1; } bool;

因此 calloc 会将 value_set 设置为零,等于 false

关于c - 当您调用包含枚举类型的结构时会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19213268/

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