2016-06-02 10 views
0

マトリックスをcsvに印刷しようとしています。 arg [2]これはファイル名であり、ファイルが生成されるため正しく動作することを確認できますが、ファイルは生成されません。私はファイルを閉じてそれにフラッシュしようとしますが、うまくいきません。C:fprintfを出力ファイルに出力できません

// Open the output/second file and write the contents of truncated DCT matrix into it 
outputfp = fopen(argv[2], "w"); 

if (outputfp == NULL) { 

fprintf(stderr, "Can't open output file %s!\n", argv[2]); 
exit(1); 
         } 
double hold = 0; 
printf("test\n"); 

for (i = 0, i < idx; i++;) { 
    for (j = 0, j < ARRAY_WIDTH; j++;) { 

    hold = test_write[i][j]; 

      fprintf(outputfp, "%.61f", hold); 
       if (j != ARRAY_WIDTH) { 

        fprintf(outputfp, ","); 
       } 
       else { 
        //continue; 
       } 
       fflush(outputfp); 
    } 
} 

fclose (outputfp); 
return 0; 
} 

答えて

4

このサイクル

for (j = 0, j < ARRAY_WIDTH; j++;) { 

決して反復します。

,;の間違った配置は、反復条件をj++にします。最初の繰り返しがj++の前には0と評価されるので、サイクルは決して入力されません。どうやら、あなたは書くつもりだったのですか?

for (j = 0; j < ARRAY_WIDTH; j++) { 
+0

ありがとうございました。以前はループのタイプが間違っていましたが、私はすべてを取り除いていました。私は目の第二のペアが必要でした。私はすでにそれを固定し、働いています。私はちょうど私が有効なCコードとして持っていたものをコンパイラが見る理由を混乱させる。 – user3055889

関連する問題