【发布时间】:2020-06-28 12:14:35
【问题描述】:
目前我发现我可以在终端输出中移动光标,就好像我在 Word 中使用 "\033[A" 将光标移动到上面的行并将 "\033[B" 移动到下面的行一样。 所以我试图理解更多的东西,我用 C 写了这两行代码:
#include <stdio.h>
#include <stdlib.h>
int main (){
printf("\n 2 3 \033[A \033[D 1 \033[B \n 4 5 6");
}
这是输出:
1
2 3
4 5 6
我的期望不同,因为这是我的预期输出
1
2 3
4 5 6
所以我遗漏了一些信息,我想我可能需要一个像“\t”一样说“回到一个位置”的字符,但恰恰相反。我在一些旧帖子中找到了这个页面Here
但有些字符不起作用。 有人可以解释一下这些东西是如何工作的吗?因为我试过"\033[C" 和"\033[D" 左右移动,但什么也没有。
【问题讨论】:
-
ASCII 表可能有助于识别您正在寻找的某些字符。
\b(二进制10,八进制\010)例如是退格键。顺便说一句,我运行了你的确切代码,得到了一些不同的东西。 -
这question/answers 有帮助吗? (你可能不喜欢这些答案。)
-
不错的技术参考VT100 User Guide
标签: c linux terminal output character