h是几进制数 – B是几进制数

时刻小站 165

为什么需要转义字符?

在ASCII编码中,前32个是不可见字符(非图形),不可见大意是指键盘上面没有对应的字符,没法构成字符常量。怎么办呢?

这个就相当于描述一个不可见的东西,人们就想,既然无法表示,我们就用一个可见的字符去代替一个不可见的字符。

于是就出现了,n表示换行符,t表示水平制表符等

有些同学认为,直接用字符编码不是更好吗?

charc=10;//或者charc=0x0A;

这个确实没问题,但是移植性不太好。比如说有些系统就不是0A表示换行符怎么办?虽然这种情况比较少见,但作者认为主要表明考虑问题的严谨性。

我们用n表示换行符,更像是一种标准,字符编码不一定为0A,但一定有字符n,相对比较安全。

使用之后,本身也难保,因此需要来表示字符。

八进制和十六进制转义

不是所有的字符都有同等的代替字符常量,因此就出现了八进制和十六进制转义。

八进制转义,形式:ooo

只需要后面+数字即可,且数字不超出3位,比如101,116等

charc=101;

十六进制转义,形式:xhh

形式为:x+十六进制数

charc=x41;

八进制和十六进制转义字符理论上表明任意字符都可以用转义表示

常见转义字符

a 响铃(BEL) 007

b 退格(BS) 008

f 换页(FF) 012

n 换行(LF) 010

r 回车(CR) 013

t 水平制表(HT) 009

v 垂直制表(VT) 011

反斜杠 092

? 问号字符 063

单引号字符 039

" 双引号字符 034

空字符(NULL) 000

ddd 任意字符 三位八进制

xhh 任意字符 二位十六进制

小结

在C语言中,使用不可打印字符时,一般用转义字符表示。

上一篇:

下一篇:

  同类阅读

分享