如果使用fscanf读取文件,是否可以使用它存储读取的字符数?

问题描述 投票:0回答:1

我正在尝试使用fscanf从文件中读取一堆单词(全部在单独的行中,我想找到每个单词的长度。 fscanf是否允许我这样做,否则,是否还有其他方法可以这样做?我一直在寻找有关“输入项已成功匹配和分配”的解释,但仍然有些混乱。谢谢。

c scanf return-value
1个回答
0
投票

要查找扫描的长度,然后在说明符后面加上一对"%n""%n"保存扫描偏移量,不贡献scanf()结果。

int n1;
int n2;
char buff[100];
//            v-------- space to consume leading white-space
while (scanf(" %n%99s%n", &n1,buff, &n2) == 1) {
  printf("word <%s> length: %d\n", buff, n2 - n1); 
}
© www.soinside.com 2019 - 2024. All rights reserved.