上篇文章我们讲解了C语言中fgetc()、fgets()之间的区别

接下来我在来讲解下fputc() 和 fputs() 之间的区别

1.fputc 是 file output char 的所以,意思是向指定的文件中写入一个字符。

fputc() 的用法为:

int fputc ( int ch, FILE *fp );

ch 为要写入的字符,fp 为文件指针。fputc() 写入成功时返回写入的字符,失败时返回 EOF,返回值类型为 int 也是为了容纳这个负数。例如:  fputc('a', fp);  或者:char ch = 'a'; fputc(ch, fp);

表示把字符 'a' 写入fp所指向的文件中。

两点说明

1) 被写入的文件可以用写、读写、追加方式打开,用写或读写方式打开一个已存在的文件时将清除原有的文件内容,并将写入的字符放在文件开头。如需保留原有文件内容,并把写入的字符放在文件末尾,就必须以追加方式打开文件。不管以何种方式打开,被写入的文件若不存在时则创建该文件。
2) 每写入一个字符,文件内部位置指针向后移动一个字节。

#include<stdio.h>
int main(){FILE *fp;char ch;//判断文件是否成功打开if( (fp=fopen("D:\\demo.txt","wt+")) == NULL ){puts("Fail to open file!");exit(0);}printf("Input a string:\n");//每次从键盘读取一个字符并写入文件while ( (ch=getchar()) != '\n' ){fputc(ch,fp);}fclose(fp);return 0;
}

2.fputs() 函数用来向指定的文件写入一个字符串,它的用法为:

int fputs( char *str, FILE *fp );

str 为要写入的字符串,fp 为文件指针。写入成功返回非负数,失败返回 EOF。例如:

char *str = "http://c.biancheng.net";
FILE *fp = fopen("D:\\demo.txt", "at+");
fputs(str, fp);

表示把把字符串 str 写入到 D:\\demo.txt 文件中。

【示例】向上例中建立的 d:\\demo.txt 文件中追加一个字符串。

#include<stdio.h>
int main(){FILE *fp;char str[102] = {0}, strTemp[100];if( (fp=fopen("D:\\demo.txt", "at+")) == NULL ){puts("Fail to open file!");exit(0);}printf("Input a string:");gets(strTemp);strcat(str, "\n");strcat(str, strTemp);fputs(str, fp);fclose(fp);return 0;
}

运行程序,输入C C++ Java Linux Shell,打开 D:\\demo.txt,文件内容为:

C语言fputc() 和 fputs() 之间的区别相关推荐

  1. c语言 python java_C语言、C++、Java,Python之间的区别,哪个更有前景,哪个更难 ?...

    从这四种语言的难度.受欢迎度还有作用以及优点缺点给楼主做一个全面的分析,我们可以从中了解其区别,以及难易程度.至于今后可以用到的或者是前景问题,根据自己的职业发展大家可以自己做个分析.最后会总结一下他 ...

  2. puts和fputs函数及其区别,C语言puts和fputs函数详解

    puts和fputs函数及其区别,C语言puts和fputs函数详解 与 gets 函数一样,对于 puts 函数,同样建议使用 fputs 函数来代替 puts 函数.如下面的示例代码所示: int ...

  3. 【学习日志】2022.09.02 (C++)strcmp和stricmp、strcmpi三者之间的区别、C语言判断文件后缀名、ZENO Audio Update、TEN MINUTES PHYSICS

    (C++)strcmp和stricmp.strcmpi三者之间的区别 (strcmpi在Windows C标准库实现,但不在GNU C标准库实现) #include <string.h> ...

  4. Golang和Go语言之间有区别吗?

    go和golang之间有区别吗? go和golang之间没有区别,go就是golang,全名是golang,简称go语言. Go(又称 Golang)是 Google 的 Robert Griesem ...

  5. c语言用表格形式输出_表格形式的C和C ++之间的区别

    c语言用表格形式输出 In this tutorial you will learn about difference between C and C++ language i.e. C vs. C+ ...

  6. 脚本语言和编程语言的区别_编程语言和脚本语言之间的区别

    脚本语言和编程语言的区别 A programming language is a language used to write set of instructions to perform a tas ...

  7. c语言fputc 函数头,简单对比C语言中的fputs()函数和fputc()函数

    简单对比C语言中的fputs()函数和fputc()函数 C语言fputc()函数:写文件函数(将一指定字符写入文件流中) 头文件: #include 定义函数: int fputc(int c, F ...

  8. DML 数据操控语言: truncate 数据截断 与 delete之间的区别: 总结:

    DML  数据操控语言: --删除 --delete from 表名 where 行过滤条件;  删除表中满足条件的数据 select * from  t_user where id in (7499 ...

  9. 深入理解c语言——‘\0’ ,‘0’, “0” ,0之间的区别

    看来基础还是很重要的,基础不扎实就难以学好c语言,就别说写出高质量的c语言代码了.今天,我就被这个问题折磨的不行了,哈哈,不过现在终于明白了'\0' ,'0', "0" 之间的区别 ...

最新文章

  1. hibernate Expression详解
  2. 客户端C++与前端js交互
  3. DTS增量/同步支持DDL迁移的说明
  4. ArcObject开发时,axtoolbarcontrol中一些添加的按钮是灰色的问题
  5. java小编程----在排序数组中查找元素的第一个和最后一个位置
  6. Qt--在.pro文件中添加链接库的写法
  7. php更新svn,利用php进行svn更新的php代码及php执行svn更新注意事项
  8. 计算机故障按照产生机理来分可分为,维修自测题
  9. OpenCV4每日一练day12:双目相机标定
  10. qpsk的matlab平方根升余,【求助】求助:【QPSK功率谱密度的matlab的代码】 - 仿真模拟 - 小木虫 - 学术 科研 互动社区...
  11. win11系统怎么样 Windows11系统好用吗
  12. Html代码打包后如何修改,html代码打包封装成APP教程
  13. 利用salt防范MD5字典攻击
  14. 5输入的多数表决器(结构化建模)
  15. stored property text without initial value prevents synthesized initializers
  16. 一度智信:拼多多商家开直通车大忌
  17. 笔记本怎样外接显示器 笔记本外接显示器方法【详解】
  18. PX4多冗余传感器代码解读
  19. 【LeetCode Python实现】 5473. 灯泡开关 IV(中等)
  20. python 循序渐进学习:输出线段图案、正方形图案、直角三角形图案、翻转直角三角形图案、带空格直角三角形图案

热门文章

  1. Jredis操作redis的入门级例子
  2. HBO《硅谷》中的二进制码
  3. Springcloud、分布式和微服务经典面试题
  4. OBD和WWH-OBD接口的外部测试设备的需求
  5. MySQL快速数据迁移
  6. uefi引导gpt安装win10_想让图形工作站运行如飞么?Win10 SSD+GPT+UEFI安装,2015的玩法...
  7. ZD680无人机组装调试流程
  8. html实现div在同一行
  9. 中文字符编码的相互转换
  10. 2021最新 新手超详细建站指南(让你少走弯路)