sprintf与sscanf

2019-01-20  本文已影响0人  lxr_

1.sprintf用于string版本的格式化输入/输出,其目标是字符串

例如,可以用其格式化一个字符串

char buf[16];

sprintf(buf,"Name:%s  Age:%d  Height:%.2f","ZhangSan",18,1.23);

则其将buf给格式化为:Name:ZhangSan  Age:18  Height:%1.23

在SQLite中模糊匹配时,目标buf应该格式化为:select* from student where name like '%Zhang%'

如果这样写:sprintf(buf,select* from student where name like '%%s%',“Zhang”)是有问题的;

可以再加%:sprintf(buf,select* from student where name like '%%%s%%',“Zhang”)

2.sscanf是从一个具有格式的字符串中提取固定字段,要求在格式上严格匹配,。其返回值表示成功提取到的个数。

例如:char* date="2019-1-20";

int year,month,day;

int n=sscanf(date,"%d-%d-%d",&year,&month,&day);

则结果是:year=2019,month=1,day=20;

上一篇 下一篇

猜你喜欢

热点阅读