什么是字符类型的数据:字符类型用于显示单个字符,比如你的键盘上随便一个字母,就是一个字母
语法: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;
}
这个就是字符数据的存储方式