C语言之fwrite()与fprintf()区别(十一)

本文深入探讨了C语言中的fwrite()和fprintf()函数,详细解释了它们的功能、参数及使用场景。通过实例分析,展示了两者在文件操作上的主要区别,帮助读者理解何时选择fwrite()进行二进制数据写入,何时使用fprintf()进行格式化文本输出。
摘要由CSDN通过智能技术生成
一、区别
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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Android系统攻城狮

你的鼓励将是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值