c - 如何创建 fscanf 格式字符串来接受空格和逗号 (,) 标记化

标签 c scanf

我有一些分析代码 (myprog),它使用以下方式吸收数据:

 if(5 == fscanf(in, "%s%lf%f%f%f", tag, & sec, & tgt, & s1, & s2))

效果很好。但在我有用逗号分隔的数据文件的情况下,我目前正在做类似的事情:

 sed 's/,/ /g' data | myprog

我可以修改 fscanf() 函数中的格式字符串以接受两种分隔格式吗?

最佳答案

fscanf(in, "%[^, ]%*[, ]%lf%*[, ]%f%*[, ]%f%*[, ]%f", tag, &sec, &tgt, &s1, &s2)

应该工作吗?

关于c - 如何创建 fscanf 格式字符串来接受空格和逗号 (,) 标记化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2867058/

相关文章:

c - FFmpeg:av_parser_parse2 做什么?

c - 用户名登录绕过密码输入直接进入else语句

c - 我无法理解这个聊天程序的结果

c - 为什么代码中只显示一次强数字?

可以直接获取 "stack"中间的元素吗?

php - 使用 PHP 从 C 应用程序的 STDOUT 读取数据

c - 我正在尝试验证用户输入。但是如果我输入了一个无效的字符,程序就会进入无限循环

c - GCC `scanf` 段错误

c - '\n' 在 memset 之后保存在数组中 (C)

c - 制作文件模式 %o :%. c