警示后人(本地全对洛谷全WA)

P5730 【深基5.例10】显示屏

milk2715093695 @ 2024-09-25 19:08:16

以前的警示贴掉到地下去了,再发一遍,具体情况查看:

警示后人(C语言全WA的原因

简单来说,在 MacOS 或者 Linux 系统下的文本文件每一行的行末换行符是一个 \n ,即你看到的是

1
2

实际上是 1 (\n) 2,这是我们的正常理解,和我们在控制台直接输入 1 + 回车 + 2 的效果是一样的,因此只需要处理掉一个额外字符。

然鹅洛谷的输入文件似乎是存在 windows 系统上的,而在 windows 系统中,文本文件的每一行行末是 \r + \n ,即虽然看到的是

1
2

但是实际上是 1 (\r\n) 2 ,因此需要处理掉的额外字符有两个。(不信的话可以把前面的字符不输出,输出第一个额外字符,洛谷的 WA 会提示出现一个 ACSII 码为 130D 也就是 \r )的异常字符)

另外这个现象在字符串题单十分明显,大家小心。


by HenryLee0626 @ 2024-10-01 17:04:28

@milk2715093695 顶


by nbq202412904430 @ 2024-10-08 19:45:25

@milk2715093695 没看懂,不知道怎么改


by z777888xxx @ 2024-10-10 18:04:45


by milk2715093695 @ 2024-10-22 18:50:30

老帖子的链接

可以看下这个,说的详细一点 @nbq202412904430


|