布尔类型
C++ 中的布尔类型
C++ 在 C 语言的根本类型零碎之上减少了 bool
C++ 中的 bool 可获得值 true 和 false
实践上 bool 只占用一个字节
bool 类型只有 true 和 false 两个值
#include "stdio.h"
int main(int argc,char *argv[])
{
bool b = 0;
printf("b=%d\n",b);
b++;
printf("b=%d\n",b);
b=b-3;
printf("b=%d\n",b);
return 0;
}
输入后果:
0
1
1
#include "stdio.h"
int main(int argc,char *argv[])
{
bool b= false;
int a = b;
printf("sizeof(b) = %d\n",sizeof(b));
printf("b=%d,a=%d\n",b,a);
b = 3;
a = b;
printf("b=%d,a=%d\n",b,a);
b = -5;
a = b;
printf("b=%d,a=%d\n",b,a);
a = 10;
b = a;
printf("a=%d,b=%d\n",a,b);
a = 0;
b = a;
printf("a=%d,b=%d\n",a,b);
return 0;
}
输入后果:
布尔类型是 C ++ 中的根本数据类型
能够定义 bool 类型的全局变量
能够定义 bool 类型的常量
能够定义 bool 类型的指针
能够定义 bool 类型的数组
C++ 对三目运算符进行了降级
三目运算符
C 语言中的三目运算符返回的是变量值
不能作为左值应用
C++ 中的三目运算符可间接返回变量自身
即可作为右值应用,也能够作为左值应用
留神:
三目运算符可能返回的值如果有一个是常量值,则不能作为左值应用;
#include "stdio.h"
int main(int argc,char *argv[])
{
int a = 1;
int b = 2;
(a<b?a:b) = 3;
printf("a = %d,b = %d\n",a,b);
}
C++ 中的援用
变量名的回顾
变量是一段理论间断存储空间的别名
程序中通过变量来申请并命名存储空间
通过变量的名字能够应用存储空间
在 C ++ 中新减少了援用的概念
援用能够看作是一个已定义变量的别名
援用的语法:type& name = var;
留神:
一般援用再定义时必须用同类型的变量进行初始化。
#include "stdio.h"
int main(int argc,char *argv[])
{
int a = 4;
int &b = a;
b = 5;
printf("a = %d\n",a);
printf("b = %d\n",b);
printf("&a = %p\n",&a);
printf("&b = %p\n",&b);
}
C++ 三目运算符
当三目运算符的可能返回都是变量时,返回的是变量援用
当三目运算符的可能返回中有常量时,返回的是值
小结
bool 类型是 C ++ 新减少的根底类型
bool 类型的值只能是 true 和 false
C++ 中的三目运算符可作为左值应用
C++ 中的援用能够看作变量的别名应用
三目运算符的可能返回都是变量时,返回的是援用