定义

全部的ASCII码都能够用“\”加数字(通常是8进制数字)来表示。而C中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,由于后面的字字符,都不是它本来的ASCII字符意思了。

常见转移字符的含义表:

很多字符都有对应的转义字符序列。包含单引號(\')、换行(\n)、制表符(\t)和反斜线(\\)。你能够在字符字面常量和字符串字面常量中使用转义字符序列。

执行机制



实际上。你能够通过使用被称为八进制转义字符的特殊类型的转义字符序列,将不论什么ASCII字符置于一个字符串字面常量或一个字符字面常量中。可是最好是尽可能地使用普通的转义字符序列。

普通的转义字符序列和八进制转义字符都比Unicode转义字符要好得多,由于与Unicode转义字符不同,转义字符序列是在程序被解析为各种符号之后被处理的。 

ASCII是字符集的最小公共特性集。它仅仅有128个字符,可是Unicode有超过65,000个字符。一个Unicode转义字符能够被用来在仅仅使用ASCII字符的程序中插入一个Unicode字符。

一个Unicode转义字符精确地等价于它所表示的字符。

Unicode转义字符被设计为用于在程序猿须要插入一个不能用源文件字符集表示的字符的情况。它们主要用于将非ASCII字符置于标识符、字符串字面常量、字符字面常量以及凝视中。偶尔地,Unicode转义字符也被用来在看起来颇为相似的数个字符中明白地标识当中的某一个,从而添加程序的清晰度。

总之,在字符串和字符字面常量中要优先选择的是转义字符序列。而不是Unicode转义字符。Unicode转义字符可能会由于它们在编译序列中 被处理得过早而引起混乱。

不要使用Unicode转义字符来表示ASCII字符。

在字符串和字符字面常量中,应该使用转义字符序列;对于除这些字面常量之 外的情况,应该直接将ASCII字符插入到源文件里。

释于生活

转义字符,来源于生活。生活中关于转义字符的解释是常态、easy理解的。以下是结合生活,关于部分转义字符的理解。感觉蛮不错的解释:

/r 回车 

其含义是倒回到本行的开头,类似于生活中的倒车计算机有西方人发明。计算机的专家们更是热爱生活。当中 回车 一词,更是符合其原本含义,生活中的倒车。

比如,James早上将车开出车库后停下。发现今天是周日。定好的去跑步,那么James就须要再将车倒回车库原处。

切换到计算机环境中,回车表示光标回到本行的行头。就是说本来光标在不断地向前输出数据(车在向前开出),可是。遇到了/ r(想起了跑步的事情)。这时就须要将此时的光标倒回到本行的开头(车回到车库的原处)。

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

/b 退格 

其含义是退一格。后面覆盖前一位。若后面没有。则光标在前一位闪烁:

(原)程序输出要求:12345678

(程序变化后)输出要求:123/b45678/b

(此时)输出:1245678

/t 制表符

其含义是将光标跳到下一个制表位 含义(一个制表位放8个字符):如果此时图上为输出界面(就是我们的屏幕)。事实上屏幕上也是有表的。仅仅只是我们看不到而已(是计算机的底层设计时建立的),每个位置输出一个字符,而一个制表位能够放8个字符,

如果我们输出的为:12345678ABCDEFG12345678ABCDEFG

后增加制表符变为:

123/t45678ABCDEFG/t1234567/t8ABCDEFG

则最后输出为:

123(5个空位置)(下一个制表符)45678ABC (下一个制表符)DEFG(4个空位置)(下一个制表符)1234567(1个空位置)(下一个制表符)8ABCDEFG

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

学习小结

关于JAVA中的转移字符,感觉学习起来就是一头雾水。经过业余时间的一通消化,感觉理解起来也是蛮简单的。

生活中,无处不在的场景,仅仅要肯去发掘。绝对是能够用到不论什么的职业的,生活中充满了知识和联系。计算机嘛,也是源于生活的,仅仅要多加联系生活,相信能够更好地理解!

[JAVA · 0基础]:3.转义字符的更多相关文章

  1. [JAVA · 0基础]:19.容器类

    概述 容器 就是存放数据的一个集合 (java提供了一个接口专门去约束我们容器的实现类) watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L ...

  2. [JAVA · 0基础]:16.经常使用类

    基本类型包装 为什么须要包装类? JAVA并非纯面向对象的语言.Java语言是一个面向对象的语言.可是Java中的基本数据类型却是不面向对象的.可是我们在实际使用中常常须要将基本数据转化成对象,便于操 ...

  3. [JAVA · 0基础]:11.终结者-final

    关于finalkeyword的总结,是非常easy学习和掌握的,大致分为用final修饰的符号常量.类.方法.属性四部分.而这四部分的内容也是我们必须掌握的,非常有用.在项目中常常来利用finalke ...

  4. _00017 Kafka的体系结构介绍以及Kafka入门案例(0基础案例+Java API的使用)

    博文作者:妳那伊抹微笑 itdog8 地址链接 : http://www.itdog8.com(个人链接) 博客地址:http://blog.csdn.net/u012185296 博文标题:_000 ...

  5. JAVA思维导图系列:多线程0基础

    感觉自己JAVA基础太差了,又一次看一遍,已思维导图的方式记录下来 多线程0基础 进程 独立性 拥有独立资源 独立的地址 无授权其它进程无法訪问 动态性 与程序的差别是:进程是动态的指令集合,而程序是 ...

  6. 0基础的小白怎么学习Java?

    自身零基础,那么我们应该先学好Java,首先我们来了解下Java的特性: Java语言是简单的 Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java.另一方面,Jav ...

  7. Java 入门课程视频实战-0基础 上线了,猜拳游戏,ATM实战,欢迎围观

    Java 入门课程视频实战-0基础 已经上传完了.欢迎小伙伴们过来围观 直接进入: http://edu.csdn.net/course/detail/196 课程文件夹例如以下: 1 初识Java  ...

  8. Java多线程系列--“基础篇”11之 生产消费者问题

    概要 本章,会对“生产/消费者问题”进行讨论.涉及到的内容包括:1. 生产/消费者模型2. 生产/消费者实现 转载请注明出处:http://www.cnblogs.com/skywang12345/p ...

  9. Java多线程系列--“基础篇”04之 synchronized关键字

    概要 本章,会对synchronized关键字进行介绍.涉及到的内容包括:1. synchronized原理2. synchronized基本规则3. synchronized方法 和 synchro ...

随机推荐

  1. Java 学习(10):java 异常处理

    java 异常处理 异常发生的原因有很多,通常包含以下几大类: 用户输入了非法数据. 要打开的文件不存在. 网络通信时连接中断,或者JVM内存溢出. 三种类型的异常: 检查性异常: 最具代表的检查性异 ...

  2. 百度语音识别服务 —— 语音识别 REST API 开发笔记

    http://blog.csdn.net/lw_power/article/details/51771267

  3. centos7修改网卡名

    http://blog.csdn.net/henulwj/article/details/47061023

  4. Accessibility辅助控制类

    熟悉Android开发的都知道辅助功能服务 Accessibility service.他的作用有非常多.360豌豆荚等应用市场的非root自己主动安装.微信抢红包插件.盲人辅助程序等等功能都是靠它实 ...

  5. HDU 3966 Aragorn's Story 树链剖分+BIT区间修改/单点询问

    Aragorn's Story Description Our protagonist is the handsome human prince Aragorn comes from The Lord ...

  6. m_Orchestrate learning system---十五、如何快速查错

    m_Orchestrate learning system---十五.如何快速查错 一.总结 一句话总结: a.删除代码法 b.添加提示代码法 c.仔细看错误信息 1.评论板块和论坛板块的实时更新? ...

  7. [JZOJ 5885] [NOIP2018模拟9.27] 物理实验 解题报告 (思维)

    题目链接: https://jzoj.net/senior/#main/show/5885 题目: 题解: 把$a$数组按升序排序 我们可以枚举$x$,发现对于任意$x$,最优情况下$y$一定等于$x ...

  8. 51nod 1717 好数 (水题)

    题目: 看起来很复杂,其实就是有多少个素因子就翻转多少次. 然后考虑到只有平方数有奇数个素因子. 一次过,上代码把: #include <iostream> #include <al ...

  9. Maven介绍_转载

    maven(一) maven到底是个啥玩意~   我记得在搞懂maven之前看了几次重复的maven的教学视频.不知道是自己悟性太低还是怎么滴,就是搞不清楚,现在弄清楚了,基本上入门了.写该篇博文,就 ...

  10. 关于目标检测 Object detection

    NO1.目标检测 (分类+定位) 目标检测(Object Detection)是图像分类的延伸,除了分类任务,还要给定多个检测目标的坐标位置.      NO2.目标检测的发展 R-CNN是最早基于C ...