我有一个在终端窗口中运行的简单控制台应用程序读取和打印字符:
int main(int argc, char **argv, char **envp)
{
while (true)
{
char c =getchar();
printf("%c \n",c);
}
}
现在我想制作可以在第一个应用程序终端中模拟字符按下的测试应用程序。
我应该走哪条路?为此,我应该使用哪些 API 函数?
最佳答案
不需要特殊的 API 或其他任何东西。由于您的示例应用程序仅从标准输入读取数据,因此您可以将内容发送到那里。
在终端中运行程序之前,使用tty
命令检查其连接的终端。然后将数据发送到 tty
报告的那个 tty。
或者,获取正在运行的应用程序的 PID 并将数据发送到 /proc/$PID/fd/0
,这样您就不需要检查 tty。
关于c++ - 将字符发送到控制台应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48622055/