sscanf、sprintf

发布时间:2024年01月23日

//——4.1 对比一组函数:
scanf / fscanf / sscanf
//scanf:是针对标准输入的格式化输入语句
//fscanf: 是针对所有输流入的格式化输入语句
//sscanf:?
//int sscanf(const char* buffer, const char* format);
从字符串中获取一个格式化的数据放到结构体中

printf / fprintf / sprintf
//printf:是针对标准输出的格式化输出语句
//fprintf:是针对所有输出流格式化输出语句
//sprintf:?
//int sprintf(char* buffer, const char* format);
把一个格式化的数据写到字符串里面去,本质是把一个格式化的数据转换成字符串
//#define _CRT_SECURE_NO_WARNINGS
//#include<stdio.h>
//struct S
//{
//?? ?char arr[10];
//?? ?int age;
//?? ?float score;
//};
//int main()
//{
//?? ?struct S s = {"zhangjie",25,50.5f};
//?? ?struct S t = {0};
//?? ?char ptr[100] = { 0 };//创建一个字符串需要大于被操作的结构体
//?? ?//把结构体的内容按照%s %d %f的格式写到字符串ptr中
//?? ?sprintf(ptr,"%s %d %f\n",s.arr,s.age,s.score);
//?? ?printf("%s\n",ptr);
//?? ?//从字符串ptr中获取一个格式化的数据放到结构体t中
//?? ?sscanf(t, "%s %d %f", t.arr, &(t.age), &(t.score));//数组名本来就是地址,所以不用&
//?? ?return 0;
//}

文章来源:https://blog.csdn.net/2201_75570527/article/details/135764671
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。