0
char ch;
while((ch = getchar()) != EOF){
    putchar(ch);
}

上記のコードは、明らかに十分であり、私の入力をコピーする必要があります。そして、基本的なASCIIテキストファイルに対しては機能します。

ただし、gif、特にこれを送信すると、ほとんどに適用できますが ( http://www.cs.utexas.edu/~peterson/prog2/smile.gif )、gif の stdin をリダイレクトすると、 stdout を任意のファイル タイプに変換し、元のファイルと新しいファイルで diff を実行すると、大量のエラーが発生します。この場合、ファイルの半分以上が処理されず、単に終了します。手がかりはありますか?一度に 1 バイトずつ入力できるのであれば、別の入出力関数に切り替えても構わないと思います。

4

1 に答える 1