《C++ Primer Plus》学习笔记——char类型

char类型:字符型、小整型

在我们学习C++的时候通常被强调char是字符型,存储容量为一个字节(8位)。在定义char类型的变量后,为其赋值采用的是单引号括起来的的一个字符。比如:

char c='A';
cou<<c<<endl;

那么上面定义的char类型c所标记的1个字节的内存中存储的到底是什么呢?我们知道计算机存储数据的方式都是以二进制的方式存储的。所以,c所存储的值实际上是字符’A’的ASCII码67的二进制值。我们同样可以采用以下方式给c赋值:

char c=67;
cout<<c<<endl;

上面两种输出结果都是:
A
那么为什么我们定义int c=67;输出的结果是67呢?你可能会觉得这就是char和int的一个区别啊,是char的特性。其实不然,有这种结果的原因其实是在类型cout上。cout是非常聪明的,在遇到char类型,它自动将c标记的内存空间的值转换成A,然后打印。遇到int类型,它就直接输出67。cout这么聪明的原因是因为运算符<<的重载。所以,char类型又被叫做小整型。因此下面的语句是合法的:

char c='A';
int i=c;
char c1=i;
cout<<c<<endl;
cout<<i<<endl;
cout<<c1<<endl;

输出结果为:
A
67
A
注意:char类型为1个字节,范围为0~127。

猜你喜欢

转载自blog.csdn.net/qq_41789960/article/details/106339645