字符常量
用单引号括起来的一个字符都叫字符常量,字符常量只能是单个字符,不能为字符串,
1 |
|
转译字符
因为存在以下转译序列,所以需要用反斜杠进行转译。
- 下列是非打印字符:
\a, 警报(ANSI C)
\b, 退格
\f, 换页
\n, 换行
\r, 回车
\t, 水平制表符
\v, 垂直制表符
\, 反斜杠
', 单引号
", 双引号
?, 问号
\0oo,八进制值(oo必须是有效的八进制数)
\xhh,十六进制值(hh必须是有效的十六进制数)
- 如下例子
1 |
|
字符变量
字符变量来储存字符常量,即单个字符
使用char 关键字后面接上变量名称作为声明方式
char 字符类型一个字符占用一个字节,
1 | char name; |
给字符一个既定的值必须用单引号括起来,
1 | char c = 'C'; |
这里注意使用%d
输出的为10进制ASCII码,如果需要输出字符,可以使用%c
进行输出
这里只是决定了字符的显示形式,字符储存永远是以二进制储存的。
1 |
|
字符可以看做是整型。C语言允许对整型变量赋以字符值,也允许对字符变量赋以整型值,同理,在输出时也可以这样做。
允许字符型参与数值运算,即利用字符的ASCII码参与运算。
字符型和字符串型的区别
字符常量是用单引号括起来,字符串常量是用双引号括起来。
字符常量只能是单个字符,字符串常量则可以包含一个或多个字符。
可以把一个字符常量赋值给一个字符变量,,但是不能把一个字符串常量赋值给一个字符变量。
在C中没有相对应的字符串变量,但是可以用一个字符数组来存放一个字符串常量。
字符常量占用一个字节的内存空间。字符常量的内存字节数等于字符串中字节数加一。增加的一个字节中存放一个空字符“\0”(ASCII码为0)这是字符串结束的标志。
字符串”woyaochifan”的内存存储
1 | w o y a o c h i f a n \0 |