我有一些分析代码(myprog
)使用以下内容来吸收数据:
if(5 == fscanf(in, "%s%lf%f%f%f", tag, & sec, & tgt, & s1, & s2))
效果很好。但是在我有数据文件被逗号分隔的情况下,我现在正在做类似的事情:
sed 's/,/ /g' data | myprog
我可以修改fscanf()
函数中的格式字符串以接受两种分隔格式吗?
答案 0 :(得分:1)
fscanf(in, "%[^, ]%*[, ]%lf%*[, ]%f%*[, ]%f%*[, ]%f", tag, &sec, &tgt, &s1, &s2)
应该有用吗?
答案 1 :(得分:0)
这个怎么样:
char tmp; fscanf(in,“%s%c%lf%c%f%c%f%c%f”,tag,& tmp,& sec,& tmp,& tgt,& tmp,& s1 ,& tmp,& s2)
如果您不关心单个字符是否界定您的值,只需阅读它并将其存储在一个抛弃变量中。