函数原型
int sscanf( const char *, const char *, …);
int sscanf(const char *buffer,const char *format,[argument ]…);
作用
从一个字符串中读进与指定格式相符的数据
头文件
#include<stdio.h>
返回值
成功则返回参数数目,失败则返回0,错误原因存于errno中。
使用方法
-
char week[16]="1,2,3,4,5,6,7"; char dd[16]={0}; sscanf(week,"%hhd,%hhd,%hhd,%hhd,%hhd,%hhd,%hhd",&dd[0],&dd[1],&dd[2],&dd[3],&dd[4],&dd[5],&dd[6]); printf("%d%d%d%d%d%d%d",dd[0],dd[1],dd[2],dd[3],dd[4],dd[5],dd[6]);
输出:1234567
这里sscanf中,写%d也行,但会出现警告!
-
char b[128]; char a[128]; char a1[128]; sscanf("transmitted, 10 packets received, 50% packet loss", "%[^%]", b); printf("b=:%s\n",b); sscanf(b, "%*s%s%*s%