我正在读取包含以下数据的文件:
1,1
0.5,0.5
2,2
这些是向量,所有数字都是双倍的。
因为在我的练习中每个向量的长度是已知的,我使用for循环来读取每个向量:
for (i=0; i<NUM; i++) { //number of vectors to read
for (j=0; j<DIM; j++) { //length of each vector
fscanf(fp,"%lf,",&x._x[j]);
}
}
这很有效,它实际上读取了所有三个向量。但是,我不确定阅读模式。
我的问题是,用“%lf”读取每个向量是否可以,因为在每个向量的末尾实际上有“\ n”而不是“,”..读取最后一个坐标是否更好每个向量的“%lf \ n”?
谢谢!
答案 0 :(得分:1)
您的问题是由于最后一个数字后面没有逗号。所以你必须做类似
的事情for (i=0; i<NUM; i++) { //number of vectors to read
for (j=0; j<DIM-1; j++) { //length of each vector
fscanf(fp,"%lf,",&x._x[j]);
}
fscanf(fp,"%lf",&x._x[j]);
}