【发布时间】:2014-06-30 17:08:31
【问题描述】:
能否使用C语言中的printf函数来控制打印的起始行号和列号?如果是这样,怎么办?如果没有,是否有任何其他功能或方法可以用来做同样的事情?谢谢。
【问题讨论】:
-
我们能知道你到底想做什么吗?
-
部分终端支持VT100 control codes,包括光标控制。另请阅读ncurses 和Windows console functions。
-
无法控制栏目;
printf()在第 1 列开始打印。如果您希望输出从第 N 列开始(N > 1),那么您必须确保首先生成 N-1 个空白(或等效)。 -
C 标准并没有说
stdout是一个终端。可以是普通文件、网络设备、屏幕阅读器、管道、大声朗读输出的人……不需要像行和列这样的东西。 -
清除屏幕不是 C 的一部分,而是目标系统终端的一部分。各种终端会根据
'\v'垂直制表符、转义序列等控制码清除。需要知道终端或其家族。