Java/C++学习笔记-转义字符[ \\ ][\"][\']

6 篇文章 0 订阅
  • Java/C++学习笔记-转义字符


转义字符: \\

ACSII码值:092

意义:代表一个反斜杆 ' \ '


转义字符: \"

ACSII码值:034

意义:表示一个双引号字符 ' " '


转义字符: \'

ASCII码值:039

意义:表示一个单引号字符 ' ' '


共同点:虽然字符由多个基础字符组合而成,但是在编译器中当成整一个字符


 

存在的必要性:举个栗子吧,当我们用C++输出一带有双引号字符串,e:cout<<" I love "you" forever "<<endl; 编译时无法通过的,因为编译器无法确定字符串是哪里开始和结束  ," I love "这样?? 还是 "you"??或者" forever "(字符串必须在双引号内)所以如果要输出 I love "you" forever  必须对字符串内存在的双引号进行区分将字符串内双引号表示成  \",就可以实现在字符串内输出字符串

#include<iostream>
using namespace std;

int main()
{
	cout << "i love \"you\" forever " << endl;
	return 0;
}

//running result:i love "you" forever

再举一个栗子:有一个字符串”\\\”A100\”\\”,用strlen计算的结果是多少?

首先字符串包裹的双引号去掉

然后 \\    \" 分别看成单个字符

所以: 1[\\] 2[\"] 3[A] 4[1] 5[0] 6[0] 7[\"] 8[\\]    字符串长度为8 


注意:脑洞别太大,我自己踩的坑:既然 \\表示单个字符\? 那 \\"等价于\"     ???  , 错!!!

 

某个字符具有对应转义字符,说明该字符具有特殊功能,通过转义字符进行区分可以使代码不具二义性。

 

总之一句话:若想在编程中体现特殊字符的特殊功能,那么采用原字符,如果只想输出,进行ASCII比较等,采用转义字符

讨论仅限于 [ \\ ][\"][\']  ,对于 \t ,\a 不适用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值