一、区别
1.fwrite()写入文件的如果是能够表示为字符,那么就会显示为字符;
如果显示不出来,那就写的是二进制内容(打开就是所谓的乱码)
2.fprintf()写的是数字转换成ASCII码之后的字符
二、例子
1.fwrite()
//test_01.c
#include <stdio.h>
int main(){
FILE * pFile;
int buffer[] = {664, 14, 84, 34};
pFile = fopen("./myfile.txt", "w+");
fwrite (buffer , sizeof(int), sizeof(buffer), pFile);
fflush(stdout);
fclose (pFile);
return 0;
}
注意:编译执行之后显示乱码,显示的是二进制文件。
2.fprintf()
//test_02.c
#include <stdio.h>
int main(){
FILE * pFile;
int n = 100;
char name[] = "Love World!!!";
pFile = fopen ("./123.txt","w+");
fprintf (pFile, "Name %d [%s]\n",n,name);
fclose (pFile);
return 0;
}
注意:编译执行后是正常内容,fprintf()把内容转换成ASCII码的字符.
3.fprintf()输出到终端用法
#include <stdio.h>
#include <stdlib.h>
int main(){
int i = 150;
char str[] = "Love Linux
C语言之fwrite()与fprintf()区别(十一)
最新推荐文章于 2024-08-12 18:01:24 发布
本文深入探讨了C语言中的fwrite()和fprintf()函数,详细解释了它们的功能、参数及使用场景。通过实例分析,展示了两者在文件操作上的主要区别,帮助读者理解何时选择fwrite()进行二进制数据写入,何时使用fprintf()进行格式化文本输出。
摘要由CSDN通过智能技术生成