-2

argv私のプログラムは、以下のように 2 つの引数 ( に入れます) で実行されます。

$ myProgram input output

printf(..)すべてを出力ファイルにリダイレクトするにはどうすればよいですか? 使用に関するいくつかの提案を見ましたfflush(stdout)が、以前は使用していませんでした。誰かが私に例を見せてもらえますか?

4

2 に答える 2

1

プログラムの出力をリダイレクトしようとしている場合は、プログラムに追加のコードを追加することなく、コマンド ライン自体から簡単に実行できます。このようにコマンドを変更するだけです。

$ myProgram input output > example.txt

出力ファイルの最後に出力を追加する場合、コマンドは次のようになります。

$ myProgram input output >> output

ただし、どちらの場合も、画面には何も表示されません。プログラムの出力全体がファイルに書き込まれます。

于 2015-02-23T10:28:57.183 に答える
0

あなたはあなたfprintf()の代わりにあなたをしなければならないでしょうprintf

ここに例があります

#include <stdio.h>

main()
{
   FILE *fp;
   fp = fopen("/tmp/test.txt", "w+");
   fprintf(fp, "This is testing for fprintf...\n");
   fputs("This is testing for fputs...\n", fp);
   fclose(fp);
}

詳細については、このページこのページを参照してください 。このコードは最初のリンクから取得されました。

于 2015-02-23T09:53:57.803 に答える