【发布时间】:2014-04-18 14:02:10
【问题描述】:
我正在 Kindle Paperwhite 2 上编写终端程序。我使用 tcc 编译。我使用Linux。我想实现gotoxy(x,y)和鼠标之类的功能。
要移动光标,我需要发送控制代码。我发现我像这样使用 printf:
printf("\033[%d;%dH",y,x);
问题是如何接收从终端发回给我的控制代码。 我正在阅读this document
我写了以下代码:
printf("\033[?9h");//this turns on the mouse in the terminal
while (1)
{
printf("\n");
sleep(1);
}
使用 scanf 或 getch() 不会捕获任何内容。
现在每次单击时,我都会在屏幕上看到一个代码(例如“^[[M 9.”)。
就好像除非换行符是打印机,否则代码不会被打印。
我需要能够将最后两个字符捕获为小数,我认为这是屏幕的 xy。
有人可以帮忙吗?
谢谢
【问题讨论】:
-
也许是 scanf()。它是 printf() 的输入版本