0

我正在尝试创建一个 SSH 子系统。所以我通过添加以下行来配置文件:“/etc/ssh/sshd_config”:“子系统测试/home/test”。

这是测试应用程序的内容:

int main()
{
        int i=0;
        int j=0;

        printf("Hello world!\n");
        for (j=0;j<10;j++)
        {
            scanf ("%d",&i);
            printf ("Printed :   %d\n",i);
        }
        return 0;
    }

我的问题是,当我从远程 ssh 连接( ssh -2 -s test user@host )执行此操作时,我只能输入数据而看不到打印的文本。(只有在申请结束后才会打印文本)

在我输入它而不是在应用程序末尾之后如何解决这个问题以查看打印的文本?

4

1 回答 1

1

这是一个缓冲问题吗?尝试调用fflush()刷新输出。

int main()
{
    int i=0;
    int j=0;

    printf("Hello world!\n");
    fflush(stdout);
    for (j=0;j<10;j++)
    {
        scanf ("%d",&i);
        printf ("Printed :   %d\n",i);
        fflush(stdout);
    }
    return 0;
}
于 2012-05-18T12:26:24.070 回答