什么是字符类型的数据:字符类型用于显示单个字符,比如你的键盘上随便一个字母,就是一个字母
语法:char 变量名 = '数据值'
如:char ch = 'a'
c和c++中字符只占用一个字节
字符变量并不是把字母放到内存中,而是把字母通过对应ASCII码表进行一个十进制转换,把字母转换成十进制,再将十进制转换成二进制存入内存
当前c++存储字符就使用char关键字 然后他占用的字节为1
一个char变量只能放一个字母,等会我会详细的解释
定义一个字符变量
char 变量名 = '数值'
#include<iostream>
using namespace std;int main()
{// 定义一个字符变量char ch = 'a';cout << ch << endl;system("pause");return 0;
}
查看一个字母的占用大小
依旧使用sizeof进行计算
#include<iostream>
using namespace std;int main()
{// 定义一个字符变量char ch = 'a';cout << ch << endl;// 计算char的字符类型的大小cout << "变量ch内存占用大小为:" << sizeof(ch) << endl;cout << "数据类型char占用大小为:" << sizeof(char) << endl;system("pause");return 0;
}
可以到占用1字节
易错处
我使用的双引号,这是不行的
使用的char字符,双引号内写多个字母,错上加错
单引号内放好几个字符,也是错误的,实际上只输出了最后一个,肯定是错的,和我们的预期不一样
字符类型存储方式
如上图的操作在变量名称的前面加上(int)意思讲ch1变量强制转换成十进制整形
ASCII码一览表,ASCII码对照表 (biancheng.net)https://c.biancheng.net/c/ascii/在这个网站可以看到字母是由那个十进制转换过来的,比如A就是65
#include<iostream>
using namespace std;int main()
{// 定义一个字符变量char ch = 'a';cout << ch << endl;// 计算char的字符类型的大小cout << "变量ch内存占用大小为:" << sizeof(ch) << endl;cout << "数据类型char占用大小为:" << sizeof(char) << endl;//易错// char ch1 = "a";// char ch1 = "abc";// char ch1 = 'abc';// cout << ch1 << endl;char ch1 = 'A';cout << (int)ch1 << endl;system("pause");return 0;
}
这个就是字符数据的存储方式