当前位置:首页 » 《我的小黑屋》 » 正文

【C语言】:浅谈函数 fscanf/sscanf 和 fprintf/sprintf

12 人参与  2024年05月02日 09:16  分类 : 《我的小黑屋》  评论

点击全文阅读


目录

一,fprintf 的介绍和使用1. 函数介绍2. 函数使用 二,fscanf 的介绍和使用1. 函数介绍2. 函数使用 三,sprintf 的介绍和使用1. 函数介绍2. 函数使用 四,sscanf 的介绍和使用1,函数介绍2,函数使用 五,总结

一,fprintf 的介绍和使用

1. 函数介绍

1.1 功能:把数据以格式化的形式写入指定的输出流上

1.2 参数:该函数的参数与 printf 函数的参数类似,只是多了一个文件流
在这里插入图片描述

2. 函数使用

此时把数据以格式化的形式写入指定的输出流上

#define _CRT_SECURE_NO_WARNINGS #include <stdio.h>struct S{char name[20];int age;float score;};int main(){struct S s = { "张三",20,65.5f };//想把s中的数据存写在文件test.txt中FILE* pf = fopen("test.txt", "w");if (pf == NULL){perror("fopen");return 1;}//写文件 -- 是以文本的形式写进去的fprintf(pf, "%s %d %f", s.name, s.age, s.score);fclose(pf);pf = NULL;return 0;}

结果如下:

在这里插入图片描述

二,fscanf 的介绍和使用

1. 函数介绍

1.1 功能:从指定的输入流上读取格式化数据

1.2 参数:该函数的参数与 scanf 函数的参数类似,只是多了一个文件流
在这里插入图片描述

2. 函数使用

此时是从文件 test.txt 中读取数据

struct S{char name[20];int age;float score;};int main(){struct S s = { 0 };//想从test.txt文件中把数据放入sFILE* pf = fopen("test.txt", "r");if (pf == NULL){perror("fopen");return 1;}//读文件fscanf(pf, "%s %d %f", s.name, &(s.age), &(s.score));//想打印在屏幕上看看printf("%s %d %f", s.name, s.age, s.score);fclose(pf);pf = NULL;return 0;}

结果如下:

在这里插入图片描述

三,sprintf 的介绍和使用

1. 函数介绍

1.1 功能:把格式化的数据写入到字符串中。其实就是把格式化的数据转化成字符串了。

1.2 参数:该函数的参数与 printf 函数的参数类似,只是多了一个字符串指针
在这里插入图片描述

2. 函数使用

此时把结构体中格式化的数据转化成字符串,再直接以字符串的形式打印。

struct S{char name[20];int age;float score;};int main(){char buf[200] = { 0 };struct S s = { "张三",20,65.5f };//把结构体中格式化的数据转化成字符串sprintf(buf, "%s %d %f", s.name, s.age, s.score);//直接以字符串的形式打印printf("%s\n", buf);return 0;}

输出结果如下:

在这里插入图片描述

四,sscanf 的介绍和使用

1,函数介绍

1.1 功能:在字符串中读取格式化的数据。

1.2 参数:该函数的参数与 scanf 函数的参数类似,只是多了一个字符串指针

在这里插入图片描述

2,函数使用

再把 buf 字符串中的数据读入结构体 t 中。再打印结构体t中的数据

struct S{char name[20];int age;float score;};int main(){char buf[200] = { 0 };struct S s = { "张三",20,65.5f };//把结构体中格式化的数据转化成字符串sprintf(buf, "%s %d %f", s.name, s.age, s.score);//直接以字符串的形式打印printf("%s\n", buf);struct S t = { 0 };//把buf中的字符串转化成结构体t中格式化的数据sscanf(buf, "%s %d %f", t.name, &(t.age), &(t.score));//打印结构体t中的数据printf("%s %d %f\n", t.name, t.age, t.score);return 0;}

输出结果如下:

在这里插入图片描述

五,总结

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/70c5dd2b9d2d41e5a1cb8cde1bc86bad.png


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/102779.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • (头条)竹马抑郁后,未婚妻疯狂报复我小说(沈星眠陆景行)整本免费版阅读无广告(竹马抑郁后,未婚妻疯狂报复我)
  • 与君来生再相爱后续+完结_小说后续在线阅读_无删减免费完结_
  • 却道无情胜有情后续更新+番外_墨宸灵珠阿宸内容精选_小说后续在线阅读_无删减免费完结_
  • 新章速递可我不想再等你了是什么小说(沈疏月傅沉舟)完本阅读无广告(可我不想再等你了)
  • 春风不渡无心人最后结局(林至南霍以峦)_春风不渡无心人最后结局
  • 折光于渊向晦而明++后续(孟裕张雅)_折光于渊向晦而明++后续
  • 救助身价六十万的流浪狗后,室友疯了虐心反转_娜娜张琳爱犬后续更新+番外_小说后续在线阅读_无删减免费完结_
  • 送走老公的白月光,我转身嫁给了死对头完整文本_恩泽维生素薛泽恩免费看_小说后续在线阅读_无删减免费完结_
  • 所爱已隔人山人海看点十足(温掬月周既明)全书浏览_所爱已隔人山人海看点十足全书浏览
  • 犹若清风梦了云小说(叶知薇晏临渊)外篇+结局(犹若清风梦了云)全篇在线阅读
  • 我转岗做文员后,自称尸语者的男友小青梅急了全书+后续高分言情(江晚晴陆景行)
  • 我转岗做文员后,自称尸语者的男友小青梅急了全书+后续列表_我转岗做文员后,自称尸语者的男友小青梅急了全书+后续(江晚晴陆景行)

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1