質問: fgetc(fpw)) != EOF) { printf("%c", str); } /* ファイルクローズ */ fclose(fpr); fclose(fpw); return 0; //正常終了の場合,戻り値は0 } sample.txtとして使用するものはこちらです。 Hello. My name is Taro. I want to money. Thank you. ``` ### 試したこと 出力のコードが間違っているかたしかめるため、読み込んだ後にすぐ入れてみると、出力はされましたが、書き込みファイルに行番号がはいったものが格納されませんでした。 ### 補足情報(言語/FW/ツール等のバージョンなど) より詳細な情報
回答: こんにちは。 VC++とMinGWでやってみましたが、同じ現象は出ませんでした。コンパイラは何をお使いでしょうか? fpwはライトオープンしているのに、fgetc()で読み出してます。これは誤動作するようです。 手元では4000バイト近い 0x00 が出力されました。 > > またファイルI/Oにおける出力とは、ファイルの中身を出力することなのか、ファイルを出力(作成、書き出し)することなのかもよくわかっていません。 > > > 前者はファイル作成を含まないの意味でしょうか? ファイル作成(サイズ0のファイルを作る)は確かに厳密に言うと微妙です。(ディレクトリの変更だけですから。) しかし、通常は両者を区別せず、ファイル出力と呼びますよ。