关于sscanf的用法

kingofvc 2002-11-12 07:19:13
我的字符串中是这个样子的
8 3
0 5 15 40 80 90 95 98 100
0 5 15 40 60 70 73 74 75
0 4 26 40 45 50 51 52 53
现在对于8 与3 放入两个int变量 后面的分别放入float变量
我通过计算 想利用%*来实现 结果老是不对
strdata 是字符串名
int n,m;
float x;
sscanf(strdata,"%d %d %f",&n,&m,&x);
这时一切正常 但是如果使用
sscanf(strdata,"%* %* %f",&x);
就是不对 怎么办?
...全文
16 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingofvc 2002-11-12
  • 打赏
  • 举报
回复
ok
thanks a lot
双杯献酒 2002-11-12
  • 打赏
  • 举报
回复
就好象
%3d 而不是 %3 一样.
双杯献酒 2002-11-12
  • 打赏
  • 举报
回复
你应该
sscanf(strdata,"%*d %*d %f",&x);
要用 %*d 而不是 %*

kingofvc 2002-11-12
  • 打赏
  • 举报
回复
An asterisk (*) following the percent sign suppresses assignment of the next input field, which is interpreted as a field of the specified type. The field is scanned but not stored.

这句话 作何解释?
难道msdn不对?

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧