Content #
回车和换行的概念最早起源于老式打字机。那种打字机上有滚筒,用于使纸张上下卷动,每敲击一个按键,字车往右移动一格,位于下一个可打印的位置。在这种古老而不失先进性的设备上,将字车推到最左边,也就是一行的开始,叫做回车(Carriage Return);而拧一下滚筒,将纸上卷一行,叫做换行(Line Feed)。如果既回车,又换行,那么,字车将位于下一行的行首。这个过程通常叫做回车换行(CRLF)。
在刚刚有了电子计算机的时候,因为它又大又贵,只能通过远程终端来分享它的计算能力。这时候,用的是电传打字机,不需要人工操作即可显示和打印字符。当然,根据需要随时回车换行还是需要的。怎么办?那就是用ASCII 码中的控制字符来命令电传打字机来做这件事。回车分配的ASCII 码是0x0d,换行分配的则是0x0a。
不过,当我们向显存里写入0x0d 和0x0a 时,并不起任何作用,也没有任何效果,没有任何硬件对解释它们的意义负责。不过无所谓,对回车换行代码的解释可以由我们自己负责,现在所要做的,就是在字符串中,需要回车换行的地方按照老传统插入这两个代码。