标签: c++ format cout
我想创建一个C ++控制台应用程序,将一些文本打印到控制台的不同部分。例如,在QBasic中,您可以使用:
locate(8,5) print "hi"
嗨将在第8栏第5行打印。在C ++中,当我使用cout时,它总是在下一行打印,并在第一列开始打印。 我有什么方法可以做到这一点吗?
答案 0 :(得分:6)
C ++ 本身没有此功能,它的I / O模型是一个相当简单的顺序模型。
如果要进行奇特的光标定位,则需要输出(例如)终端将识别为特殊命令(例如ANSI或VT转义序列)的控制字符,或者使用像curses这样的库(参见此处的ncurses),它可以为你做很多繁重的工作,不仅仅是光标定位,还有文本模式窗口等等。
答案 1 :(得分:2)
像ncurses这样的库可以帮助您实现这一目标。