网站教程制作,福建泉州做网站公司哪家好,简单的购物网站项目,网页设计与网站建设有区别吗C中bool类型的使用细节
ANSIISO C标准添加了一种名叫bool的新类型(对 C来说是新的)。它的名称来源于英国数学家 George Boole#xff0c;是他开发了逻辑律的数学表示法。在计算中#xff0c;布尔变量的值可以是true或false。过去#xff0c;C和C一样#xff0c;也没有布尔…C中bool类型的使用细节
ANSIISO C标准添加了一种名叫bool的新类型(对 C来说是新的)。它的名称来源于英国数学家 George Boole是他开发了逻辑律的数学表示法。在计算中布尔变量的值可以是true或false。过去C和C一样也没有布尔类型。在第5章和第6章中将会看到C将非零值解释为true将零解释为false。然而现在可以使用 bool类型来表示真和假了它们分别用预定义的字面值 true 和 false 表示。也就是说,可以这样编写语句:
bool is readytrue;字面值 true 和 false 都可以通过提升转换为 int 类型true 被转换为1而 false 被转换为 0:
int ans true;int promise falsei
//ans assigned lpromise assigned 0另外任何数字值或指针值都可以被隐式转换(即不用显式强制转换)为bool值。任何非零值都被转换为 true而零被转换为 false:
bool start -100;bool stop0;
//start assigned true/stop assigned false定义和初始化 bool 变量
bool isTrue true; // 初始化为 true
bool isFalse false; // bool flag true;
if (flag) {// 执行条件为真的代码块
}bool a true;
bool b false;
bool result a b; // 逻辑与运算result 的值为 false
result a || b; // 逻辑或运算result 的值为 true
result !a; // 逻辑非运算result 的值为 false
函数返回值
bool isEven(int num) {return num % 2 0;
}
bool result isEven(5); // 调用函数并将返回值赋给变量 result需要注意的是bool 类型的值可以隐式转换为整数类型其中 true 转换为 1false 转换为 0。而整数类型也可以隐式转换为 bool 类型其中非零整数值会被转换为 true而零值会被转换为 false。
bool b 1; // b 的值为 true
int num true; // num 的值为 1另外C 还提供了一种扩展的布尔类型叫做 std::boolalpha它可以将 true 和 false 转换为字符串 “true” 和 “false”或者将字符串 “true” 和 “false” 转换为相应的布尔值。
bool flag true;
std::cout std::boolalpha flag; // 输出 true对C感兴趣的朋友点这里C/C课程