java中%c%n是什么意思_在编码时如何使用\r与\n,两者的区别

java中%c%n是什么意思_在编码时如何使用\r与\n,两者的区别\r与\n到底有何区别,编码的时候又应该如何使用,我们下面来了解一下。区别:\r:全称:carriagereturn(carriage是“字车”的意思,打印机上的一个部件)简称:return缩写:rASCII码:13作用:把光标移动到当前行的最左边\n:全称:newline别名:linefeed缩写:nASCII码:10作用:把光标向下移动一行不同操作系统怎样表示“回车+换行”(即一行的结…

大家好,又见面了,我是你们的朋友全栈君。

\r与\n到底有何区别,编码的时候又应该如何使用,我们下面来了解一下。

区别:

\r:全称:carriage return (carriage是“字车”的意思,打印机上的一个部件)

简称:return

缩写:r

ASCII码:13

作用:把光标移动到当前行的最左边

\n:

全称:new line

别名:line feed

缩写:n

ASCII码:10

作用:把光标向下移动一行

不同操作系统怎样表示“回车+换行”(即一行的结束):

Unix、Linux:\n表示回车+换行,\r没什么意义

Windows、DOS:\r\n表示回车+换行,顺序不能变

Mac:\r表示回车+换行

历史:

机械的英文打字机:在打字机上,有一个部件叫“字车”(carriage),每输入一个单词,“字车”就前进一格。当输满一行后,使用者就要推动“字车”到起始位置,这时打字机会有两个动作:“字车”归位、滚筒(roller)上卷一行(相当于“字车”下移一行),以便开始输入下一行。这两个动作合起来叫做“回车”,相当于现在键盘中的“Enter”键。

电传打字机:(Teletype Model 33,Linux/Unix下的tty概念也来自于此)每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。

于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车(return)”,告诉打字机把打印头定位在左边界;另一个叫做“换行(newline)”,告诉打字机把纸向下移一行。后来这两个动作被缩写为“\r”和“\n”。

编程语言中如何使用:

因为Unix中是用“\n”表示一行的结束,所以在C语言(以及其他C语言的继承者,比如C++, Java)中可以直接使用“\n”,在不同的操作系统中会被自动转换成相应的字符(比如在Windows中会被转成“\r\n”)。

以上就是本文的全部内容,希望大家能够喜欢。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157057.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Laravel Homestead 的安装和使用

    Laravel Homestead 的安装和使用

    2022年3月13日
    40
  • vue formdata请求_vue修改数据没有渲染到页面的原因

    vue formdata请求_vue修改数据没有渲染到页面的原因longlonglongtimenosee,最近遇到个奇葩的问题来记录下,不知道有没有小伙伴和我一样崩溃过。写了三年代码,上传这么简单的功能。第一次遇到前端入参fromData请求接口报500的问题,百度了好多资料尝试也没有解决。后台一直说我前端的问题,于是debugger一步一步查。下面来看看报错代码的流程,用你们的丰富经验和火眼金睛帮忙看下到底错在哪里了?!本项目用的是vue-cli…

    2022年10月16日
    1
  • 可重入锁和不可重入锁的区别

    可重入锁和不可重入锁的区别不可重入锁示例(同一个线程不可以重入上锁后的代码段)如下是一个不可重入锁的逻辑过程,会发现执行main方法控制台会打印执行doJob方法前,然后就会一直线程阻塞,不会打印执行doJob方法过程中,原因在于第一次上锁后,由于没有释放锁,因此执行第一次lock后isLocked=true,这个时候调用doJob()内部又一次调用了lock()由于上个线程将isLocked=true,导致再次进入的时候就进入死循环。导致线程无法执行System.out.println(“执行doJob方法过程中”);这

    2022年6月26日
    33
  • CSS之 sass、less、stylus 预处理器的使用方式

    CSS之 sass、less、stylus 预处理器的使用方式

    2020年11月19日
    161
  • ORM学员管理系统

    1.使用MySQL自己创建一个数据库,以下例为例2.在项目的settings.py文件中进行数据库链接信息3.在项目下的__init__文件中写入以下命令4.在项目下的models.py文件中创

    2022年3月29日
    34
  • 基于php教师档案管理系统毕业设计

    基于php教师档案管理系统毕业设计获取项目源文件,联系Q:1415736481,可指导毕设,课设随着经济的发展和社会的进步,高校的现代化管理逐渐被人们所重视,利用计算机对高校的管理在各个领域中都有广阔的发展空间和前景。高校教师档案管理系统的设计与实现对高等院校的决策者和管理者来说至关重要,对教育系统来说更是不可缺少的。本系统采用PHP语言和MySQL数据库等技术,基于B/S模式,根据管理员、教务处管理员、教师三种不同的用户权限…

    2025年6月27日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号