gpt4 book ai didi

c - 使用分隔符 “_”读取输入fscanf

转载 作者:行者123 更新时间:2023-12-02 08:10:23 25 4
gpt4 key购买 nike

如何在txt文件中扫描以下内容?

number_name_name1_number2

例如:
12_whoever_alternative with spaces_31

我试过了:
fscanf(f, "%d %[^_]_ %s %[^_]_ %s %[^_]_ %d", &number, name, name1, &number2)

最佳答案

如果您必须为此使用fscanf(),则应使用以下格式:

fscanf(f, "%d_%[^_]_%[^_]_%d", &number, name, name1, &number2);

假定分隔符是单个下划线,并且不容纳两个为空的字符串。它确实在每个数字之前都包含前导空格(将被忽略),并且两个字符串将允许跨行。这两个潜在的问题都可以解决,尽管在数字之前拒绝空格需要使用 %[指令而不是%d,从而扫描到字符串。

总体而言,这可能比它值得的麻烦多得多。通常,编写自己的解析函数要比依靠 scanf()函数来处理除最简单的格式化之外的任何其他函数更好。

关于c - 使用分隔符 “_”读取输入fscanf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47818421/

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