C标准现在说:
取消定义和重新定义宏 bool、true 和 false 的功能已过时,可能会在未来版本中删除。
也就是说,stdbool.h
已弃用。但是没有给出任何理由,我也找不到。他们打算永远添加 bool 作为基本类型还是有其他东西?
如果您碰巧知道为什么不推荐使用它,谢谢您告诉我!
你的问题有几个误解:
第一个是您链接到 POSIX 参考,该参考通常遵循 C 标准,但并非必须如此。
您引用的部分提供信息而不是事实,因此可能根本不反映 C 标准。因此,它也不具有权威性。
引用还说,用户取消定义或重新定义宏的能力是可以取消的。头文件中的宏<stdbool.h>
不会受此影响。
最后,它还说这种可能性可能会被取消,而不是它将会或已经被取消。
为什么不推荐使用 stdbool.h?
它不是。
您引用了以下注释:
取消定义和重新定义宏 bool、true 和 false 的功能已过时,可能会在未来版本中删除。
这意味着将来可能会删除以下段落:
应用程序可以取消定义,然后可能重新定义宏 bool、true 和 false。
这并不意味着标题或其内容将被删除。