2012-07-11 64 views
1

我想在一行中写入80(标准圆锥宽度)字符,而光标不会移到下一行。当我想在控制台的末行行中打印80个字符时,这只是个问题。它滚动,我不想要的。没有下一行的标准控制台输出

请看:

enter image description here

我不想换行。任何方式来做到这一点? :/ 在Windows上使用DEV-C++,使用WinApi获取颜色并移动光标(窗口调整大小)。

Thanx任何答案。

+0

发布你做了什么的代码片段 – Dirk 2012-07-11 15:39:07

+1

@Dirk:这会有帮助吗?他的问题已经清楚地说明了,对此没有什么需要。 – houbysoft 2012-07-11 15:40:04

回答

2

不使用标准输出功能,而是使用Windows控制台API设置光标位置并绘制字符。具体来说,看看WriteConsoleOutput

MSDN Console API Docs

1

你在一条新线上的唯一原因是控制台不够大,无法支持八十颗恒星。

所以它将光标移动到下一行。

+0

我知道它:)但我怎么能防止光标移动后,把字符? – 2012-07-11 15:41:26

+0

@kittyPL没有任何方式,我知道... – Neal 2012-07-11 15:43:09

0

通过一个或两个“\ b”结束它将光标移回。

+0

does not帮助。我认为它不会将其移动:/ – 2012-07-11 15:43:09

+0

在控制台中没有任何向上或向下的操作,它只是将光标移动到下一行或仅仅是真正满了的\ n \ r。 – 2012-07-11 15:49:42

0

对于系统关键控制台窗口,光标应该始终保持可见,而对于它这样做你已经达到了一个线字符的最大数后的唯一办法,是流行在下一个可见行上(没有实际制作任何新行)。

0

通过管道过滤原始程序或其他程序中的输出。当你在一行中输出太多字符时,你可以做任何你喜欢的事情(即删除字符,覆盖等等)。

相关问题