【发布时间】:2016-06-24 09:06:16
【问题描述】:
所以我像这样创建了一个数据文件:
for(size_t n = ...;...;...){
//do some stuff
double mean_value = ...
double min_value = ...
double max_value = ...
FILE *fp = fopen(OUTPUT_FILE,"a+");
fprintf(fp,"%d %lf %lf %lf\n",n,mean_value, min_value, max_value);
fclose(fp);
}
现在我想阅读我写的mean_values...
FILE *fp = fopen(OUTPUT_FILE,"a+");
double *means = malloc(...);
for(size_t i = 0; ...; ...){
fscanf(fp,"%*d %lf %*lf %*lf\n", &means[i]);
}
//more stuff
fprintf(fp,...);
fclose(fp);
gcc 对此抱怨:
警告:在 gnu_scanf 格式中同时使用赋值抑制和长度修饰符 [-Wformat=]
fscanf(fp,"%*d %lf %*lf %*lf\n", &means[i]);
^
我不确定它在这里想告诉我什么。
【问题讨论】:
-
@EugeneSh。除非我输入错误,否则您应该看到一个
%lf,其他应该是%*lf,因此被忽略。 -
是的,对不起。误读