为什么行尾因平台而异?甚至为什么在编程中会有line ending之类的术语?
我更喜欢以 Unix/Linux 格式保存我的代码,即使我在 Windows 上也是如此。我是否因为未将其保存为 Windows 或 MacOS 格式而遗漏了什么?行尾在编码中有何作用。
最佳答案
在早期,当打字机几乎是从计算机获取输出的唯一方式时,CR 和 LF 做了不同的事情。 Unix 开创了使用单个字符来标记行尾的传统,可能是因为这使流水线操作更容易;如果需要,他们的驱动程序可以轻松地将单个 LF 转换为 CR/LF。 Linux 主要是 Unix 的克隆,因此它保留了这一约定。其他人出于历史原因坚持 CR/LF 约定,即使这不是绝对必要的。
某些语言(例如 C、C++ 和 Python)允许您在打开文件时指定文件类型,二进制或文本。对于文本文件,会执行翻译,以便将单个 LF 翻译成操作系统所需的行结束约定。
关于windows - 行尾在编码中有何影响?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11856315/