如何跳过某个值并转到fscanf()
中的下一个值?例如,我的输入文件中包含以下数据:
11112222
3.95
4
22.5
为了扫描第二个值我应该怎么做? (我想跳过11112222扫描3.95)
还有一件事:如果我想fscanf()
特定数据类型,我该怎么做? (例如:我想扫描double
值并跳过int
值。)
答案 0 :(得分:4)
您可以使用*
修饰符扫描值并将其丢弃而不是存储它。例如:
if (scanf("%*d%lf", &var) != 1)
…process input error…
将读取输入文件的前两行,并将第二行的值存储到双变量var
答案 1 :(得分:0)
int fun() {
int unusedvar;
float value;
FILE *fp=fopen("yourfilename","r");
fscanf(fp,"%d%f",&unusedvar,&value);
return 0;
}
那么简单吗?