我试图将矩阵打印到csv中。 arg [2]在这是文件名,我可以验证它是否正常工作,因为它将生成文件,但不会填充它。我关闭文件并尝试刷新它但它不起作用。
// 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;
}
答案 0 :(得分:4)
这个周期
for (j = 0, j < ARRAY_WIDTH; j++;) {
从不迭代。
错误放置,
和;
会使j++
成为迭代条件。从第一次迭代j++
求值到0
之前,永远不会进入循环。显然,你打算写
for (j = 0; j < ARRAY_WIDTH; j++) {