30

回车、换行和换行有什么区别?它取决于操作系统吗?为什么我们需要使用所有这些来进入下一行?

4

1 回答 1

37

通常,“新行”是指通常被解释为表示新行的任何字符集,包括:

  • DOS/Windows 上的CR LF
  • 旧 Mac 上的CR
  • Unix 变体上的LF ,包括现代 Mac

CR是回车 ASCII 字符(代码 0x0D),通常表示为 \r。 LF是换行符(代码 0x0A),通常表示为 \n。

最初的基于打字机的计算机需要这两个字符,它们完全按照他们所说的那样做:CR 将马车返回到纸的左侧,LF 将其通过一行。Windows 保持这个序列不变,而 Unix 变体选择更有效的字符使用,一旦它们只是象征性地需要。

如果需要在代码中表示此序列,请确保查找与平台无关的换行符或函数。如果没有,至少确保您考虑了上述三个变体。

有关历史的更多信息:http: //www.codinghorror.com/blog/2010/01/the-great-newline-schism.html

于 2012-09-12T11:19:58.967 回答