我写了一段代码,它会从标准输入中读取一行字符,字符长度在0到100000之间。
但我发现每次读入字符,当一行包括超过2046个字符时,超过的字符不能被读入。这些字符甚至不能再标准输入中显示出来。

在上图所出现的终端中,如果我再输入任何字符,都不会再显示出来。
我尝试了四种字符串读入方法,分别是:
fgets()一次性读入字符串,
scanf()一次性读入字符串,
fgets()分段读入字符串,
getchar()逐个字符读入字符串。
但所有方法在dev c++和VS2022中出现了相同的问题。当我把代码提交到测试平台,却读入了全部字符串并且测试通过。我不禁怀疑是我的电脑问题。
从标准输入读取字符,电脑终端会对一行字符的最大长度进行限制吗?