C语言中/r和/n的区别

回车和换行的区别

回车:将光标重新指向当前行的开头,其中没有被写出的内容也随之失效。

换行:直接将光标向下挪动一行,不回到行开头。

C语言中的\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 因为编程语言在不同平台做了适配

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7732175
  • 除此之外, 这篇博客: 用C语言写飞机小游戏中的 这是自己实训写的代码,现在分享给大家,直接贴代码,主要用到光标定位,和多线程 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

     


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^