c:使用scanf跳过一个元素

时间:2013-05-12 10:26:49

标签: scanf elements skip

我正在尝试扫描包含13个int的文件,这些文件将存储在13个变量中。有没有办法循环这个,同时跳过第i个元素?我预计可能会有一个解决方案,这个解决方案尚未成功,可能与下面的代码类似:

int i;
for (i = 0; i < 13; i++)
  fscanf(file, %d, &variables[i]); // somehow apply i to %d

而不是明显但冗长且不洁净的人:

fscanf(file, %d, &variable1);
fscanf(file, %*d, %d, &variable2);
fscanf(file, %*d %*d, %d, &variable3); // etc

感谢

1 个答案:

答案 0 :(得分:1)

int *variables[] = { &variable1, &variable2, &variable3, ... };

for (int i = 0; i < 13; i++) {
  fscanf(file, "%d", variables[i]);
}