0

入力として数値を取得し、コンソールに同じ数値を出力する簡単なプログラムテストがあります。

#include<stdio.h>
int main(void)
{
   int i;
   printf("Test Pgm \n");
   printf("Enter a no:");
   scanf("%d",&i);
   printf("No Inputted:%d \n",i);
   return 0;
}

//上記のプログラムは10.220.5.xx(別のマシン)にあります

##gcc -o test test.c

sshを介して別のマシンからtestpgmfrmを呼び出すと、imが実行されているマシンでプロンプトが表示されません。

$ ssh user@10.220.3.xx '/home/user/test'
user@10.220.3.xx's password

パスワードを入力した後、「TestPgm」でさえ何も表示されません。プロンプトをリモートで取得して値を入力するにはどうすればよいですか?

4

1 に答える 1

1

fflush(stdout);の前に追加してみてくださいscanf()

また、 の戻り値を確認する必要がありscanf()ます。数値以外のテキストを指定すると、入力の変換に失敗する可能性があります。

fflush(stdout);
if(scanf("%d", &i) == 1)
  printf("Number input: %d\n", i);
于 2013-01-03T10:13:45.983 に答える