《C语言的转义字符辨析》

作为c语言的初学者,很多人都会被转义字符搞得头昏脑胀。那么何为转义字符呢?转义字符的作用是什么呢?想知道的话就和猪猪一起看下去吧!【如有错误,麻烦于评论区斧正,多谢】

【转义字符的种类和作用】

\?:在书写多个问号时使用,防止他们被解析为三字母词。

\”:用来表示字符常量“。

\\:用于表示一个反斜杠,防止他们被解释为一个转义序列符。

\a:警告字符,蜂鸣。

\b:退格符。

\f:进纸符。

\n:换行。

\r:回车。

\t:水平制表符。

\v:垂直制表符。

\ddd:ddd表示1~3个八进制数字。

\xdd:表示2个十六进制数字。

有的大哥看完之后和没看一样,于是猪猪开启说人话模式

【说人话】

\?:在以前的编译器,???是有可能被解析为】,通过加入\防止这种错位解析,但是在现在的编译器不存在这种问题了,所以我也没办法给你们做出实验。

\":正常情况下你想打印 “ 是打印不出来的,vs会直接报错,如下图:

 但是在”前面加上\就可以得到你想要的单字符",如下图:

 \\:相信我你想单独输入\真的不是一件容易的事情,比如你想输出你的电脑文件路径:此电脑\date\pr\adobe Premiere Pro 2022,但凡是个新手在vs中程序写的都是如下图所示:

 

 但是结果你们也看见了,你会发现你的\没有了,这就是编译器将其转化为了转义字符,我们要想将其转义回来只需要在前面加上\就可,这就是转义+转义=没转义,相当于数学中的负负得正,加入之后的效果如下图:

\a:就是会导致你电脑的蜂鸣,个人建议摘下耳机使用,别问我咋知道的,问就是我耳膜差点炸了

\b: 就是输出时光标后退一格,然后导致两个字输出到一起,效果如下图:

 反正我觉得这玩意没啥用哈。

\f:这玩意叫进纸符,说实话我找半天我也没找到他的作用,在vs中的实验结果我也没看懂,结果如下:

我觉得可能就是和前面的 \?差不多,存在于老的编译器中,新的编译器不兼容

\n:就是换行,让你的想输出的另起一行,在新的一行输出

\r:就是回车,就是回到这一行的开始,重新输出新的数据

\n和\r的效果如下:

 一个是换新的一行输出,一个是覆盖性输出

\t:水平制表符号(作用其实都差不多),在一个制表符的范围内,删除或者增加文字数量,不会改变第二行的制表符的位置(其实就是键盘的tab键),效果如图:

 \v:在vs中也是实验不出来的,估计也是新的编译器不支持的原因,如图:

 \ddd:ddd表示1~3个八进制数字,然后将这个八进制数组转化为十进制数组,然后输出十进制数字在ASCII表种对应的字符。如下图:

88对应的字符就是X。

\xdd :就是将dd作为十六进制数转化为十进制数,然后输出这个十进制数对应的ASCII的字符,如图所示:

 以上就是猪猪对转义字符的全部理解,若有错误,还请于服务区指正。上面的编译器直接打出不知名字符的,都是俺们后期用不到的。相信猪猪(尽管我猪猪都不太相信猪猪)。

 

 

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
C语言中的转义字符在字符串中占用一个字符的位置。例如,转义字符"\t"表示一个制表符,它在字符串中只占用一个字符的位置。同样地,转义字符"\n"表示一个换行符,也只占用一个字符的位置。所以,字符串"c:\test\628\test.c"的长度是14,因为其中包含了转义字符"\t"和转义字符"\62"。这两个转义字符分别占用了一个字符的位置。\[2\]\[3\] #### 引用[.reference_title] - *1* [特殊转义字符的长度判断C语言](https://blog.csdn.net/qq_40641046/article/details/109495247)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [C语言中的转义字符 4.8](https://blog.csdn.net/aaaaaaaWoLan/article/details/115519147)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [【C语言】-4- 转义字符(学会求字符串长度)](https://blog.csdn.net/weixin_52411749/article/details/123980478)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值