gpt4 book ai didi

c - 有什么方法可以让 gcc 发出警告,以便在 C 中将隐式枚举转换为 int?

转载 作者:太空宇宙 更新时间:2023-11-04 04:49:55 25 4
gpt4 key购买 nike

有什么方法可以让 gcc 在 C(不是 C++)中对隐式枚举到 int(或反之亦然)的转换发出警告。

我发现隐式转换可能有点马虎,我花了很长时间来追踪我造成的与此相关的错误。

最佳答案

在 C 中,没有隐式转换警告,因为根据语言定义,enum 的常量属于 int 类型,而不是 enum 类型。如果你让编译器对这些事情发出警告,你会在第二行而不是第三行收到警告:

enum things { thing };       //< declaration of a constant of type int
enum things thingy = thing; //< implicit conversion from int to enum things
enum things thingi = thingy; //< no conversion

关于c - 有什么方法可以让 gcc 发出警告,以便在 C 中将隐式枚举转换为 int?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16592880/

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