gpt4 book ai didi

c - 为什么使用 而不是 _Bool?

转载 作者:太空狗 更新时间:2023-10-29 17:17:43 25 4
gpt4 key购买 nike

每当我需要 boolean 类型时,我都会被告知要么创建一个,要么使用 stdbool.h 更好。

由于 stdbool.h 使用 typedef bool _Bool,是否有理由使用 header 而不是仅使用类型 _Bool?是否只是为了额外的宏(/* #define true 1 #define false 0 */)?

最佳答案

要添加到语言中的明显类型是 bool。但不幸的是,编写了大量包含其他形状和形式的 bool 的代码。回想一下,仅在 C99 中添加了对 boolean 类型的支持。

于是C语言委员会只好为它拉出一个保留标识符(_Bool)。但是,由于类型名称的明显选择仍然相同,因此添加了 stdbool.h 以允许用户使用明显的名称。这样,如果您的代码没有自制的 bool,您可以使用内置的。

如果您不受某些现有的自制 bool 的约束,那么请确实使用 stdbool.h。它将是标准类型,具有该类型带来的所有好处。

关于c - 为什么使用 <stdbool.h> 而不是 _Bool?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47374356/

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