gpt4 book ai didi

c - 为什么 fscanf 在后续调用中没有按预期工作?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:00:11 25 4
gpt4 key购买 nike

char s[20];
fscanf(stream, "%s", s);

我发现它只能第一次有效,后续调用会失败。

(gdb) p fscanf(stream, "%s", s)
$15 = 1
(gdb) p (char *)s
$17 = 0x7fffffffe770 ""

从上面可以看出fscanf匹配了1个字符,但是没有存储到s中?

更新

有没有办法得到FILE*对应的文件名?

文件内容:

a
abc
b
c
e
f
h
hi

最佳答案

fscanf et al返回转换的 items 数,而不是字节数或字符数。因此,您成功转换了一个项目,在本例中是一个字符串,它恰好为空 ("")。

关于c - 为什么 fscanf 在后续调用中没有按预期工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7386611/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com