🚩write in front🚩
🔎大家好,我是謓泽,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎
🏅2021年度博客之星物联网与嵌入式开发TOP5~2021博客之星Top100~2022博客之星Top63~作者周榜84﹣作者总榜704~阿里云专家博主 & 阿里云星级博主~掘金优秀创作者⇿InfoQ创作者⇿51CTO红人⇿全网访问量50w+🏅
🆔本文由 謓泽 原创 如需转载还请通知⚠
📝个人主页-謓泽51Ctop的博客📃
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝
📣系列专栏-謓泽51Ctop的博客_【C语言】从0~1_51CTO博客🎓
✉️我们并非登上我们所选择的舞台,演出并非我们所选择的剧本📩
🍑🍑🍑文本文件和二进制文件🍑🍑🍑
🍉文本文件🍉→一种计算机文件,它是一种典型的顺序文件,其文件的逻辑结构又属于流式文件。特别的是,文本文件是指以ASCII码方式(也称文本方式)存储的文件,更确切地说,英文、数字等字符存储的是ASCII码,而汉字存储的是机内码。文本文件中除了存储文件有效字符信息(包括能用ASCII码字符表示的回车、换行等信息)外,不能存储其他任何信息。说简单点,文本文件实际上就是把内存文件转换成ASCll码的值,最后存到文件当中去。
🍉二进制文件🍉→
包含在 ASCII 及扩展 ASCII 字符中编写的数据或程序指令的文件。计算机的文件基本上分为二种:二进制文件和 ASCII(也称纯文本文件),图形文件及文字处理程序等计算机都属于二进制文件。这些文件含有特殊的格式及计算机代码。ASCII 则是可以用任何文字处理程序阅读的简单文本文件。说简单点,二进制这种文件是把内存这种二进制数据不加任何的转换直接写到文件当中去的。
文本文件这不用说是很简单的,那么我们来用代码演示下二进制文件。假设我们要写入变量num 的数字 1000,让我们来康康。示例代码如下↓
🍓🍓讲解desu🍓🍓
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main(void)
{
int num = 1000;
FILE* pf = fopen("test.txt", "wb");
//返回值判断
if (pf == NULL)
{
perror("fopen");
return 1;//返回
}
//写入文件
fwrite(&num, sizeof(int), 1, pf);
//关闭文件
fclose(pf);
pf = NULL;
return 0;
}
💥温馨提示💥:使用上面的模式说明符,文件将作为文本文件打开。为了将文件作为二进制文件打开,必须在模式字符串中包含一个"b"字符。这个额外的"b"字符可以被添加到字符串的末尾从而形成以下复合模式。所以,我们这里的 mode 参数是"wb"。
那么让我们一起看下运行结果🖊
那么有人会说为什么这个是二进制啊。当然如果你想知道它是不是二进制很简单。如果你是使用 vs 的编译器的话可以直接↓
那么 1000 是不是上面的这些数字,我们可以算一算。
首先十进制转换成二进制:0000 0000 0000 0000 0000 0011 1110 1000
那么接下来我们转换成十六进制:00 00 03 E8
张三:哇塞学会了(★ ω ★)
不错!那么我们可以知道这个是没有任何的问题的。这种进制转换是必须要拿捏的。