μLink 2023-03-24 16:25 采纳率: 35.3%
浏览 54

sscanf如果遇到中间是空字符的情况会怎么样?

sscanf如果遇到中间是空字符的情况会怎么样?

如:

int a,b,c;
sscanf("123,456,78","%d,%d,%d",&a,&b,&c);
printf("a=%d b=%d c=%d ",a,b,c);

输出a=123 b=456 c=78

那如果是中间有空字段的情况会有问题么?

int a,b,c;
sscanf("123,,78","%d,%d,%d",&a,&b,&c);
printf("a=%d b=%d c=%d ",a,b,c);

会输出a=123 b=0 c=78 么?
我测试会有问题,感觉运行不正常。
那如果是这样的sscanf 的输入字符串中某个字段真的为空怎么办?
像GPS 数据 中经常有空的情况如:$GNRMC,060145.00,A,3422.64515,N,10892.61585,E,5.537,279.38,240323,,,A,V0E或
$GNRMC,,V,,,,,,,,,,N,V
37
难道没有定位的时候用sscanf提前有效数据就会出错么?
想用sscanf解析GPS 数据

  • 写回答

6条回答 默认 最新

  • 於黾 2023-03-24 16:37
    关注

    这种数据用python处理会非常简单
    要用c处理是很麻烦的

    评论

报告相同问题?

问题事件

  • 创建了问题 3月24日