C++中的布尔类型

1 C++中的布尔类型

1.1 布尔类型

C++中的布尔类型:

  • C++在C语言的基本类型系统之上增加了bool,其可能的取值只有true(1)和false(0)。
  • 理论上bool只占用一个字节。
  • bool类型是基本类型,可以用来定义bool型的全局变量、常量、指针和数组等。
  • C++编译器会将非0值转换true(即1),0值转换为false(即0)。
  • 为了兼容C语言,是支持数学运算的。
#include <stdio.h>

int main()
{
    bool b = false;
    int a = b;

    printf("sizeof(b) = %d\n", sizeof(b)); //1
    printf("b = %d\n, a = %d\n", b, a);    //0, 0

    b = 3;  //编译器发现会bool型赋值非0,就会转化为1
    a = b;  //a为1

    printf("b = %d, a = %d\n",b, a);
    
    b = -5; //非0,被转为1
    a = b;  //a为1

    printf("b = %d, a = %d\n",b, a); //1,1

    a = 10; 
    b = a; //非0,被转为1

    printf("a = %d, b = %d\n",a, b); //10,1

    a = 0; 
    b = a; //0

    printf("a = %d, b = %d\n",a, b); //0,0

    return 0;     
}

参考资料:

  1. C++深度解析教程
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值