• 締切済み

C言語 ファイルの読み込みについて

以下のようなプログラムを実行します \nで改行が行われません。なぜでしょうか? #include <stdio.h> void main () { FILE *fp; double a, b; int count=0; fp = fopen("arm_x.csv","r"); while(1) { fscanf(fp,"%lf%lf\n",&a,&b); printf("%f::%f\n",a,b); count++; if(count==10)break; } fclose(fp); } csvファイルは 0.0 0.1 0.2 0.3 0.4 0.5 0.1 0.2 0.3 0.4 0.5・・・ 0.2 0.3 0.4・・・・・・・・・ : : です。 実行結果はこのようになってしまいます。 0.0 0.1 0.2 0.3 0.4 0.5 : :

みんなの回答

  • tsunji
  • ベストアンサー率20% (196/958)
回答No.2

1行読み込みをしたいんだったら、 fgetsでファイルから1行読み込み、 sscanfでデータを変換するしかないね。 まあ、fscanfは便利だけど、ファイルがおかしい場合は正常な読み出しが 出来ないので、あまり使わないほうがいいね。

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

そもそも「改行」されるなんて仕様じゃないから.

関連するQ&A