前提・実現したいこと
言語はC言語
3次元空間上の複数の点の座標(x,y,z)が "x y z" というように1行づつ記載されている Q2.txt を読み取り、簡単に座標を変換し別のファイル Q3.txt に書き込む
発生している問題
fgetsを用いて1行づつ読み取りたいがなぜか読み取りが行われず、Q3.txtファイルが白紙で作成される
該当のソースコード
#include<stdio.h> #include<stdlib.h> #define N 256 int main(void) { FILE *fp_r, *fp_w; char str[N]; double y, u, v; if ((fp_r = fopen("Q2.txt", "r")) == NULL) { printf("ファイルを開けませんでした\n"); return 1; } fp_w = fopen("Q3.txt", "w"); while (fgets(str, N, fp_r) != NULL) { if (sscanf(str, "%lf %lf %lf", &y, &u, &v) == 3) { u = u - 128; v = v - 128; fprintf(fp_w,"%f %f %f\n", y, u, v); } } fclose(fp_r); fclose(fp_w); return 0; }