用C/C++总结bool值

前端之家收集整理的这篇文章主要介绍了用C/C++总结bool值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
考虑下面的C代码
bool a = 5;
bool b = 6;
int c = (int)a + (int)b;

当我编译并运行此代码时,c的值为2.标准是否保证在任何编译器/平台中,使用false(0)或true(不一定是1)初始化的bool值将在操作和上面的代码中为1总是会导致c为2?

在C99中,包括stdbool.h,仍然有效吗?

解决方法

@H_404_11@ C标准的4.7节(整数版本)说:

If the source type is bool,the value false is converted to
zero and the value true is converted to one.

第4.9节对浮点转换提供了相同的保证.

原文链接:https://www.f2er.com/c/116506.html

猜你在找的C&C++相关文章