2021.02.05 C++ P12 数据类型——转义字符

§2.5 转义字符
本文部分内容来自于百度百科。
§2.5.1 引子&定义
所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加""来表示常见的那些屏幕上不能显示的ASCII字符(如\0,\t,\n等),将其定义为转义字符——因为后面的字符,都不是它本来的ASCII字符意思了。
转义字符是很多程序语言、数据格式和通信协议的形式文法的一部分。对于一个给定的字母表,一个转义字符的目的是开始一个字符序列,使得转义字符开头的该字符序列具有不同于该字符序列单独出现时的语义。因此转义字符开头的字符序列被叫做转义序列。
转义序列通常有两种功能。第一个是编码一个句法上的实体,如设备命令或者无法被字母表直接表示的特殊数据。第二种功能,也叫字符引用,用于表示无法在当前上下文中被键盘录入的字符(如字符串中的回车符),或者在当前上下文中会有不期望的含义的字符(如C语言字符串中的双引号字符,不能直接出现,必须用转义序列表示)。在后面那种情况,转义序列是一种由转义字符自身和一个被引用的字符组成的一个二合字母(digraph)情形。

§2.5.2 字符表
在这里插入图片描述
注意:
(1)区分斜杠" / " 与 反斜杠" \ " ,此处它们不可互换;
(2) \xhh 十六进制转义不限制字符个数 ‘\x000000000000F’ == ‘\xF’。

§2.5.3 “转义字符”与“控制字符”概念辨析
转义字符不属于控制字符;控制字符也不属于转义字符。如果控制字符的定义是非图形的字符,或者对输出设备(打印机、文本终端)有特殊意义的字符,那么针对这些设备的转义字符也是控制字符。但是程序设计用的转义字符是图形字符,因此它们不是控制字符。相反地,大多数ASCII控制字符均单独具有控制功能,因此它们不是转义字符。

§2.5.4 重难点
本节重点介绍换行符、反斜线与水平制表符。
(1)换行符
要注意到,在C语言中,没有“endl”。
因此可以在输出命令双引号的文字最后加上“\n”
参考代码如下:

#include<iostream>

using namespace std;

int main() {

	//换行符“\n”:
	cout << "Hello World!\n";

system("pause");

return 0;
}

运行效果如图示:
在这里插入图片描述
(2)反斜线
必须输入两次“\”,才能输出一个“\”。
参考代码如下(顺便观察一波换行符的作用):

#include<iostream>

using namespace std;

int main() {

	//换行符“\n”:
	cout << "Hello World!\n";

	//反斜线“\”:
	cout << "\\" << endl;

system("pause");

return 0;
}

运行效果如图示:
在这里插入图片描述

§2.5.5
每个水平制表符会占用8个字符的固定空间。
作用:输出至窗口时,有对齐效果,看起来美观整齐。
参考代码:

#include<iostream>

using namespace std;

int main() {

	//水平制表符“\t”:
	cout << "x\tHello World!" << endl;
	cout << "xx\tHello World!" << endl;
	cout << "xxx\tHello World!" << endl;
	cout << "xxxx\tHello World!" << endl;
	cout << "xxxxx\tHello World!" << endl;

system("pause");

return 0;
}

运行效果如图示:
在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

You酱去哪儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值