//sprintf把一个格式化数据写到字符串中,本质是把一个格式化数据转换成字符串
#include<stdio.h>
#include<stdlib.h>
#include <string.h>
struct S
{
char arr[10];
int age;
float score;
};
int main()
{
struct S s = { "zhangsan",20,55.5f };
struct S tmp = { 0 };
char buf[100] = { 0 };
//把s中格式化数据转化成字符串放到buf中
sprintf_s(buf, "%s %d %f", s.arr, s.age, s.score);//sorintf是把一个格式化数据转化成字符串
printf("%s\n", buf);
//从字符串buf中获取一个格式化数据到tmp中
sscanf_s(buf,"%99s %d %f", tmp.arr, _countof(tmp.arr),&(tmp.age), &(tmp.score));
printf("%s %d %f\n", tmp.arr, tmp.age, tmp.score);
return 0;
}
//sscanf从一个字符串中转化出一个格式化数据