2015-08-15 67 views

回答

3

这两个字符是CR(回车符,13)和LF(换行符,10),根据操作系统使用的约定,可以使用其中一个(或两者)来表示换行符。援引维基百科(https://en.wikipedia.org/wiki/Newline):基于ASCII或兼容的字符集或者LF (十进制换行, '\ n',的0x0A,10)或CR(回车

系统, '\ R' , 0x0D,十进制13),或CR后跟LF(CR + LF, '\ r \ n',0x0D0A)。这些字符是基于打印机命令的: 换行表示一行纸张应从 打印机送出,因此指示打印机将纸张推进一行,并且 回车表示打印机托架应返回到 当前行的开始。某些罕见系统(如版本4之前的QNX )使用ASCII RS(记录分隔符0x1E,十进制为 中的30)字符作为换行符。

同一条指示哪个约定用于由OS:

  • LF:Multics的,Unix和类Unix系统(Linux,OS X,FreeBSD中,AIX,Xenix的等),BeOS,Amiga,RISC OS等。 CR:Commodore 8位机器,Acorn BBC,ZX Spectrum,TRS-80,Apple II系列,Mac OS最高版本9和OS-9
  • RS:QNX pre-POSIX实现。
  • 0x9B:使用ATASCII变体的ASCII的Atari 8位机器。 (十进制155)
  • LF + CR:Acorn BBC和RISC OS假脱机文本输出。
  • CR + LF:Microsoft Windows,DEC TOPS-10,RT-11和大多数其他早期的非Unix和非IBM OS,CP/M,MP/M,DOS(MS-DOS,PC DOS等)。 ),Atari的TOS,OS/2,Symbian操作系统,Palm操作系统,中共的Amstrad
2

输入是一个关键,而不是一个角色,所以它并没有真正有一个值。在某些系统中还有一个返回键,这些键可能会给出换行(ASCII 10),其他回车(ASCII 13)。在一些系统中,他们只给出其中的一个。

换行字符是唯一一个将获得下一行,但本义就是:去到下一行,而不是去下一行的开始回车的本义是转到行首。

这意味着某些系统需要两个字符才能真正转到下一行的开头(如Windows),但有些系统只使用一个。