如何防止 windows 控制台上的回车键自动滚动
How to prevent enter key on windows console from automatically scrolling
每当我在 windows 控制台中输入一些字符并按下回车键时,它会自动滚动到下一行。有什么方法可以在 C++ 中禁用此行为(使用 Windows API),如果可以的话;怎么样?
如果您调用 scanf
或 getline
或类似方法,则底层 C 运行时 (CRT) 会处理 Enter、Backspace、Delete、箭头键、Tab 等,当然还有所有可打印键.
如果您想以不同于 CRT 的方式处理 Enter,那么您还必须使用 _getch
(不同于 getchar
的非标准函数)处理所有其他键。您将不得不编写一些代码。据我所知,如果不进入下一行,就无法使用 scanf
或 getline
。
每当我在 windows 控制台中输入一些字符并按下回车键时,它会自动滚动到下一行。有什么方法可以在 C++ 中禁用此行为(使用 Windows API),如果可以的话;怎么样?
如果您调用 scanf
或 getline
或类似方法,则底层 C 运行时 (CRT) 会处理 Enter、Backspace、Delete、箭头键、Tab 等,当然还有所有可打印键.
如果您想以不同于 CRT 的方式处理 Enter,那么您还必须使用 _getch
(不同于 getchar
的非标准函数)处理所有其他键。您将不得不编写一些代码。据我所知,如果不进入下一行,就无法使用 scanf
或 getline
。