gpt4 book ai didi

c - 使用一个终端将输入发送到另一终端?

转载 作者:行者123 更新时间:2023-11-30 17:51:27 30 4
gpt4 key购买 nike

我是 C 编程的初学者,我正在尝试编写一段代码,将输入从一个终端发送到另一个我正在运行程序的终端(我不知道这是否有任何区别,但是这是一个 telnet 程序)。原因是,我经常向程序编写命令,它会发送一些文本,使得我迄今为止编写的内容无法更改。我的目的是在主终端下的一个小终端中运行一个程序,并通过这个终端发送命令,我在堆栈溢出中查看了许多问题来编写这个程序,但它似乎不起作用,所以我决定在这里问我做错了什么?很抱歉,如果这不是一个适合本网站的问题,但这是我所知道的最好的问题。这是我的代码:

(我也非常感谢您提出的任何建议)

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char command[1001];
char px[1001 + 8 + 13 + 3] = "";
char p1[8] = "echo | ";
char p2[13] = " > /dev/pts/";
char p3[3] = "";

int term, compLimit, i;
compLimit = 14;

printf("Put terminal number here: ");
scanf("%d", &term);
sprintf(p3, "%s%d", p3, term);

while(strncmp(px, "exit mudclient", compLimit))
{
for(i = 0; i < 1021; i++) px[i] = 0;
scanf("%s", command);
strcat(px, p1);
strcat(px, command);
strcat(px, p2);
strcat(px, p3);
system(px);
}
return 0;
}

最佳答案

从你对问题的描述来看,你真正需要的是主 ncurses 库。有了它,您将能够在单个终端中将输出与输入分开,并且您还将获得全功能的输入编辑功能(具有可滚动的命令历史记录)。

关于c - 使用一个终端将输入发送到另一终端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16723787/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com