C语言中的转义字符

"这篇博客详细介绍了编程中的转义字符用法,包括?防止问号被解释,""和'在字符串常量中的作用,以及\用于表示反斜杠。还探讨了特殊字符如a、、f、 、 、 和v的含义。此外,解释了八进制和十六进制转义序列,并通过实例说明了超出字符范围的转义值可能产生的未定义行为。"
摘要由CSDN通过智能技术生成

转义字符有一个反斜杠\加上一个或多个其他符号组成

\?在书写连续多个问号时防止被解释为三字母词

\"用于表示一个字符串常量内部的双引号

\'用于表示字符串常量'

\\用于表示一个反斜杠,防止它被解释为转义序列

有许多字符并不在源代码中出现,但它们在格式化程序输出或操作终端显示屏的时候非常有用。

\a警告字符。它将奏响终端铃声或产生其他一些可听见可看见的信号

\b退格符

\f进纸字符

\n换行符

\r回车符

\t水平制表符

\v垂直制表符

\dddddd表示1~3个八进制数字。这个转义符表示的字符就是给定的八进制数值所代表的字符

\xddd与上面相似,只是八进制数换成了十六进制数

!!!注意:任何十六进制数都有可能包含在\xddd序列中,但如果结果值的大小超出了超出了字符的范围,其结果就是未定义的。

例如:\40的值是多少?\100、\x40、\x100、\0123、\x0123的值有分别是多少?

答:假定系统使用的是ASCII码字符集,则存在下面的相等关系:

\40 = 32 = 空白字符

\100 = 64 = ‘@’

\x40 = 64 = ‘@’

\x100占据了12位(尽管前三位为0)。在绝大多数的机器上,这个值过于庞大,无法存储于一个字符内,所以它的结果因编译器而异。

\0123由两个字符组成:'\012''3',其结果因编译器而异。

\x0123过于庞大,无法存储于一个字符内,其结果值因编译器而异。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值