上QQ阅读APP看书,第一时间看更新
2-3-2 字符
字符是指一个单引号之间的符号,可以参考实例2,例如:
‘ ’
字符也可以用码值代表,可以参考实例3。
声明字符变量可以使用char关键词,每一个char所声明的变量占据的内存空间是8位,也可以称一字节(byte)。
因为28=256,所以每个字符char可代表256个不同的值。在C语言中,这256个不同的值是根据ASCII码的值排列的,而这些码的值包含小写字母、大写字母、数字、标点符号及其他一些特殊符号,读者可以参考附录A(可在前言最后扫码下载)。声明字符变量须使用char关键词,其语法如下:
char 字符变量;
实例1:声明字符变量single_char,其声明方式如下:
char single_char;
实例2:声明字符变量single_char,并将其值设定为“a”:
char single_char = 'a';
实例3:声明字符变量single_char,将其码值设定为97:
char single_char = 97;
由于值97经查ASCII码得知是a,所以实例2和实例3代表意义是一样的。
另外,C语言中,有一些无法打印字符,例如,“\0”,虽然在单引号中有“\”和“0”,但是它们合并起来只能算是一个字符,称这些字符为逸出(escape)字符,如下是这些字符。
ASCII的特殊字符
程序实例ch1_1.c中笔者有说可以使用“\n”字符换行输出,其实就是使用上述ASCII特殊字符的概念。
此外,也可以利用下列两种特殊字符,处理所有适用于IBM PC的ASCII字符:
'\xdd':x后面的两个d各代表一个十六进制数值,因此可代表256个ASCII字符。
'\ddd':三个d各代表一个八进制数值,因此也可代表256个ASCII字符。
注 默认char所声明的变量是8位,但是适用UNIX操作系统的机器,也有以16位存储char字符变量。