- ベストアンサー
プログラムで得られたdataをfileに書込みたい
windowsXPで、コンパイラはボーランドのを使用しています。 プログラム中で、 for(i=1;i<10;i++) { printf("%f",x[i]); } と書いておいたら、 コマンドプロンプトにその結果が表示されます。 コマンドプロンプトに結果を書くのではなく、 指定したファイルに結果を書かせるコマンドがUNIXにはあると思うのですが、(学校ではLINUXを使っています) そのコマンドを私の環境で使うようにできるでしょうか? それがどのようなコマンド名だったか覚えていないのですが、 ご存知のかた、よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
プログラムで、直接ファイルに書くのは No1さんが書かれている fprintfを使います。 また、リダイレクトという方法もあり 例えば、ls の結果をファイルにしたいのであれば ls > filename とすれば、ls の結果がfilename というファイルに 作成されます。 ls >> filename というようにすれば 追記されます。
その他の回答 (4)
- muyoshid
- ベストアンサー率72% (230/318)
こんにちわ。 > 指定したファイルに結果を書かせるコマンド 多分、tee コマンドの事だと思います。 % proc | tee -a output.txt とすると、proc コマンドの出力を標準出力と output.txt ファイルに出力させる事ができます。 勿論、Linux でも使えますょ。 コマンドの詳細は、man コマンドでも確認して下さい。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
prog.exe > output.txt とかすればいいですよ コマンドってほどでもないけど 追加する場合は prog.exe >> output.txt
- Somali_Shinji
- ベストアンサー率14% (45/305)
fprintf(),fopen(),fclose()はNo.1さんが紹介してますが、コマンドラインでファイルを指定しようとすると、main(argc, argv) などとも戦う必要があります。 むしろそのコマンドの名前が a.out だとして、それを実行するとき、コマンドプロンプトに a.out > data.txt とすればファイル "data.txt" にデータが入ります。
- driverII
- ベストアンサー率27% (248/913)
fprintfですね。 fopen で 開いて fprintf で 書く。 fclose で 閉じる。 あとは調べてね^^;
お礼
ありがとうございます。 Cプログラムのコマンドではなく、UNIXのターミナル上でのコマンドがあったと思うのです。
補足
皆様ご回答ありがとうございます。 おかげさまで解決しました。 勉強になりました。