如何在c中的不同屏幕上显示输出?

时间:2017-11-17 09:13:01

标签: c

我想在不同的屏幕上显示输出,但是如何? 例如: 我想要显示"你好世界"在第一个黑屏上,当我按下回车键时,旧屏幕将消失,另一个新的黑屏将显示"谢谢你" 。 该怎么做呢?

2 个答案:

答案 0 :(得分:0)

取决于您想要的内容,但只需在输入后清除屏幕。

puts("\033[2J");将使用VT100转义码在大多数终端上运行。

clrscr()<conio.h>中定义的非标准函数,是一些较旧的编译器使用的函数。

system("cls");适用于Windows,system("clear");适用于Linux,位于<stdlib.h>

这些选项将涵盖使用C时遇到的大多数环境。

答案 1 :(得分:0)

这与平台有关。

在Unix中,你必须调用相应的API,Qt或GTK来创建一个新的终端控制台。

在Windows中,您必须调用WinAPI,例如CreateConsole等。

如果您只想清除当前的控制台,会更容易。使用ASCII CSI转义序列适用于大多数Unix&amp; Linux系统,只是

printf("\x1B[2J");

或在Windows中,请致电

system("cls");

实际上有一种更原生的方法,它调用FillConsoleOutputCharacterFillConsoleOutputAttribute,这引入了我在这里不讨论的额外代码。