char类型用于储存字符(如,字母或标点符号),但是从技术层面看,char是整数类型。因为char类型实际上储存的是整数而不是字符。计算机使用数字编码来处理字符,即用特定的整数表示特定的字符。
char类型占1个字节,无符号类型它能存储的范围是0~255。它代表的字符,我们在网上查找ASCII字符编码就能找到字符和其对应的值。
标准ASCII码的范围是0~127,只需7位二进制数即可表示。通常,char类型被定义为8位的存储单元。
声明char类型变量
char response;
char itable, latan;
字符常量和初始化
char grade = ‘A’; // 注意这里使用的是单引号,如果是字符串使用的是双引号
char broiled; /* 声明一个char类型的变量 */
broiled = 'T'; /* 为其赋值,正确 */
broiled = T; /* 错误!此时T是一个变量 */
broiled = "T"; /* 错误!此时"T"是一个字符串 */
实际上,字符是以数值形式储存的,所以也可使用数字代码值来赋值:
char grade = 65; /* 对于ASCII,这样做没问题,但这是一种不好的编程风格 */
非打印字符
单引号只适用于字符、数字和标点符号,浏览ASCII表会发现,有些ASCII字符打印不出来。例如,一些代表行为的字符(如,退格、换行、终端响铃或蜂鸣)。C语言提供了方法表示这些字符。
- 使用ASCII码
- 使用转义序列
打印字符
printf()函数用**%c**指明待打印的字符。