回车:将光标重新指向当前行的开头,其中没有被写出的内容也随之失效。
换行:直接将光标向下挪动一行,不回到行开头。
\r
和 \n
\r
:回车\n
:回车加换行。
C语言中的缓冲区的刷新策略是行刷新,即遇到换行符就刷新缓冲区,所以\n
会将缓冲区刷新,但是\r
不会刷新缓冲区。
计算机键盘最早来自打字机
在打字机上,回车和换行是不同的,回车就是把打字手柄移动到纸张最左
换行就是把纸筒向上卷起一行
所以\r就是回车,而\n就是换行。
\r Carriage Return CR
\n Line Feed LF
Windows 使用的换行符是 \r\n CRLF
Linux 系统使用的换行符是 \n LF
但是 在编程语言中都可以使用 \n 因为编程语言在不同平台做了适配