首页 > 其他分享 >\r,\n,\r\n的区别

\r,\n,\r\n的区别

时间:2024-09-14 21:47:50浏览次数:7  
标签:字符 每行 结尾 区别 换行 CR 回车

回车和换行来源

回车”(Carriage Return)和“换行”(Line Feed)

在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 33)的玩意儿,每秒钟可以打10个字符。但它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。

于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。

这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。

\n 和 \r 的差异

符号        ASCII码      意义
\n           10         换行
\r           13         回车CR

后来,计算机发明了,这两个概念也就被搬到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。

'\r'是回车,'\n'是换行,前者使光标到行首,后者使光标下移一格。通常用的Enter是两个加起来。

有的编辑器只认\r\n,有的编辑器则两个都认。所以要想通用的话,最好用\r\n换行。

Windows系统里面,每行结尾是 回车+换行(CR+LF),即“\r\n”;
Unix系统里,每行结尾只有 换行CR,即“\n”;
Mac系统里,每行结尾是 回车CR 即'\r';

标签:字符,每行,结尾,区别,换行,CR,回车
From: https://www.cnblogs.com/ALaterStart/p/18414728

相关文章

  • OpenAI的ChatGPT各个模型有什么区别?
    ChatGPT版本历史/区别特点对比以下是OpenAI 公司ChatGPT 各主要模型版本的详细描述,说明了每个版本中的显著变化:GPT-3.5发布日期:2022年11月描述:GPT-3.5是第一个用于ChatGPT的版本,基于GPT-3.5模型。此版本在准确性和理解能力上有所提升,但仍在GPT-3的基础......
  • [Vue] computed、watch 和 watchEffect 的区别
    前言当依赖的数据发生改变,computed、watch和watchEffect都会被触发。但是它们之间又有自己的特点,使用场景也不一样。关于computed是什么,以及它和普通函数的区别、运用场景,查看我的另一篇博文:[Vue]computed和普通函数的区别。特性watchwatchEffectcomputed......
  • slice 和 splice 的区别
    slice和splice是JavaScript中用于操作数组的两个方法,但它们在功能和行为上有显著的区别。让我们分别来看它们的定义和区别。1.slice()定义:slice()方法用于返回数组的一部分,不修改原数组。参数:slice(start,end),返回从索引start到索引end(不包括end)的数组元素。......
  • java-----instanceof与getClass的区别
    java-----instanceof与getClass的区别在比较一个类是否和另一个类属于同一个类实例的时候,我们通常可以采用instanceof和getClass两种方法通过两者是否相等来判断,但是两者在判断上面是有差别的,下面从代码中看看区别:publicclassTest{ publicstaticvoidtestInstanceof(Obj......
  • 云服务器和物理服务器的区别在哪
    在当今数字化的时代,服务器在企业和个人的信息技术架构中扮演着至关重要的角色。其中,云服务器和物理服务器是两种主要的服务器类型,它们在多个方面存在着明显的区别。一、硬件方面物理服务器是实实在在的物理硬件设备,它由机箱、主板、CPU、内存、硬盘等组件构成。用户拥有对物理服......
  • commit@push 与 commit@sysc 有什么区别和联系
    commit@push和commit@sync是Git操作中的两种不同命令组合或工作流,虽然两者都涉及commit操作,但它们的目标和执行操作有些不同。下面解释它们的区别和联系:1.commit@push含义:指的是先进行gitcommit提交,然后使用gitpush将本地的提交推送到远程仓库。流程:commit......
  • 直流电阻和交流电阻区别详解
    直流电阻和交流电阻在电学领域中是两个重要的概念,它们之间存在多个方面的区别。以下是对两者区别的详细阐述:一、直流电阻和交流电阻的定义与特性直流电阻:是指在直流电路中对电流的阻碍作用,表现为元件通上直流电时所呈现的电阻,即元件固有的静态电阻。直流电阻的大小可以通过欧姆......
  • 直流电阻和交流电阻区别详解
    直流电阻和交流电阻在电学领域中是两个重要的概念,它们之间存在多个方面的区别。以下是对两者区别的详细阐述:一、直流电阻和交流电阻的定义与特性直流电阻:是指在直流电路中对电流的阻碍作用,表现为元件通上直流电时所呈现的电阻,即元件固有的静态电阻。直流电阻的大小可以通过欧姆定律......
  • Spring和Spring Boot之间的区别
    Spring和SpringBoot是Java开发中常用的框架,它们之间有许多联系,但也存在显著的区别。Spring是一个全面的Java应用开发框架,而SpringBoot是基于Spring的快速开发工具,用于简化Spring应用的配置和部署。以下是它们的主要区别:1.框架定义Spring:是一个完整的、功能强......
  • carplay和carlife的三种区别
    CarPlay和CarLife作为车载互联系统,近年来在汽车行业中得到了广泛的应用。它们不仅为驾驶者提供了更加便捷、智能的驾驶体验,还推动了车联网技术的发展。然而,这两者之间也存在明显的区别,本文将从三个方面探讨CarPlay和CarLife的不同之处。首先,从支持的系统来看,CarPlay是苹果公司推出......