初原挽风
文章23
标签17
分类0

一言

文章归档

回车与换行的区别

回车与换行的区别

先了解定义

  • 回车(carriage return):将光标移动到本文开头!
  • 换行(Line feed):将光标移动到下一行(不一定是行首)!

换行与回车的转义字符

  • 回车:\r,ASCII码:13
  • 换行:\n,ASCII码:10

在C语言中的实现

以下在测试使用 CentOS 7.6 使用原生 /etc/bash 终端

  • 回车(\r):

测试一:

1
2
3
4
5
6
#include <stdio.h>

void main() {
printf("-----------------------------\r");
printf("+++++++");
}
输出一:

image-20240214215339249

由于 \r 的缘故,执行完第 4 行代码时,\r 会使光标移动到当前行的行首,执行第5行代码时,输出 +++++++,并且由于第5行代码输出最后没有换行(\n),故 [root@wanlu ~] 会继续在 + 后面输出,覆盖第 4 行输出的内容。

代码测试二:

1
2
3
4
5
6
# include <stdio.h>

void main() {
printf("-----------------------------\r");
printf("+++++++\r");
}
输出二:

image-20240214215229771

在代码测试一的基础上,这第5行代码最后又由于 \r ,使用第 5 行输出的内容被 [root@wanlu ~] 覆盖。

代码测试三:

1
2
3
4
5
6
#include <stdio.h>

void main() {
printf("-----------------------------");
printf("+++++++\r");
}
输出三:

image-20240214215425146

  • 换行(\n):

代码测试:

1
2
3
4
5
6
#include <stdio.h>

void main() {
printf("-----------------------------\n");
printf("+++++++");
}
输出:

image-20240214215547639

通过以上的程序输出,我们不难判断出,回车与换行之间的区别

但是我又想到了在编辑 word 文档中,我们点击键盘上面的 Enter(回车) 键,在 word 中,它即回车又换行了,但是 Enter 键是一个回车键,这又引起了我的疑惑。

其实,在 word 中有“硬回车”与“软回车”之分,硬回车中 会自动换行,所以就是我们在word中看到的效果,这也是为方便人们编辑文档。

拓展

word 中硬回车与软回车

  • 硬回车:在 word 中,只用 输入 Enter(回车) 键,便可以实现。使用硬回车, word 会自动换行,相当于写文章中的分段。

  • 软回车:在 word 中,使用 Shift + Enter 组合键,只会实现换行。看上去与”硬回车“差不多,但是上下文是一段的。

本文作者:初原挽风
本文链接:https://www.wanlu.fun/8c5905dc.html
版权声明:本文采用 CC BY-NC-SA 3.0 CN 协议进行许可