0

ファイルに関する割り当てに問題があります。

割り当ては次のとおりです。

テキスト ファイルの各行にその行の番号を追加するプログラムのコードを書くように依頼されました。たとえば、元のファイルが次の場合:

Hi my name is Oria
I study programming
I love dogs
I use stackoverflow

次のように変更されます。

1 Hi my name is Oria
2 I study programming
3 I love dogs
4 I use stackoverflow

しかし、行をスキップする方法がわかりません。最初の数字を書いた後、次の行の最初の文字になるように *file ポインターを進めるにはどうすればよいですか?

4

2 に答える 2

2

これは、別のファイルに書き込むことで実行できます。

fgets を使用して入力ファイルの各行を読み取り、ループ カウントを開始してから、カウントとデータを出力ファイルに書き込みます。

#include <stdio.h>
int main()
{
FILE *src, *dest;
char buf[64];
int i = 0;
src = fopen("in.txt", "r");
dest = fopen("out.txt", "w");
while(fgets(buf, 64, src) != NULL){
    i++;
    fprintf(dest, "%d %s", i,buf);
}
fclose(src);
fclose(dest);
return 0;
}
于 2013-05-13T17:38:24.157 に答える