Linux系统编程—文件—fputc、fgetc、feof函数
一、fputc函数
函数格式:int fputc (int c, File *fp)
函数功能: 将字符c写到文件指针fp所指向的文件的当前写指针的位置。
参数:c 为要写入的字符,虽然函数被定义为整型数,但仅用其低八位。fp为文件指针。
返回值:fputc()写入成功时返回写入的字符,失败时返回EOF。
#include <stdio.h>
#include <string.h>int main()
{FILE *fp;int i;char *str="wo hen shuai";int len=strlen(str);fp=fopen("./test.txt","w+");for(i=0;i<len;i++){fputc(*str,fp);str++;}fclose(fp);return 0;
}
二、fgetc函数
fgetc()函数用于从文件流中读取一个字符,
其原型为:int fgetc(FILE * stream);
参数:stream为文件指针。
返回值:成功返回读取到的字符,读到文件结尾时返回EOF
三、feof函数
feof是C语言标准库函数,其原型在stdio.h中,其功能是检测流上的文件结束符,如果文件结束,则返回非0值,否则返回0(即,文件结束:返回非0值;文件未结束:返回0值)。
#include <stdio.h>int main()
{FILE *fp;int i;char c;fp=fopen("./test.txt","r");while(!feof(fp)){c=fgetc(fp);printf("%c",c);}fclose(fp);return 0;
}
用while循环判断,文件结束返回非0值,取反所以跳出while循环。
Linux系统编程—文件—fputc、fgetc、feof函数相关推荐
- Linux系统编程-文件的操作
Linux系统编程-文件操作 前言: Linux 中所有内容都是以文件的形式保存和管理的,即一切皆文件,普通文件是文件,硬件设备(键盘.监视器.硬盘.打印机)是文件,就连套接字(socket).网络通 ...
- 外网访问arm嵌入式linux_嵌入式Linux系统编程——文件读写访问、属性、描述符、API
Linux 的文件模型是从 Unix 的继承而来,所以 Linux 继承了 UNIX 本身的大部分特性,然后加以扩展,本章从 UNIX 系统接口来描述 Linux 系统结构的特性. 操作系统是通过一系 ...
- 4. linux调用文件计算阶乘前5项和_嵌入式Linux系统编程——文件读写访问、属性、描述符、API
Linux 的文件模型是从 Unix 的继承而来,所以 Linux 继承了 UNIX 本身的大部分特性,然后加以扩展,本章从 UNIX 系统接口来描述 Linux 系统结构的特性. 操作系统是通过一系 ...
- linux系统编程——文件编程
linux系统编程--文件编程 文章目录 linux系统编程--文件编程 一.如何创建.修改一个文件 二.linux系统调用的API 三.文件描述符 四.linux系统调用 1.创建文件-creat ...
- linux 文件操作 编程,Linux系统编程------------文件操作(基础)
一.文件操作 1.1 Linux文件系统结构 1.1.1 Linux常见系统目录 /bin : 存放普通系统可执行的命令(ls wc等) /sbin : 存放系统管理程序(fsck等) /b ...
- Linux系统编程—文件—write函数
一.write函数手册上的定义 write函数需要包含头文件 #include <unistd.h> 函数原型:ssize_t write(int fd, const void *buf, ...
- Linux系统编程@文件操作(一)
只总结了部分常用的内容,详细内容参考<UNIX环境高级编程>及相关书籍. Linux中文件编程可以使用两种方法 Linux系统调用(依赖于系统) C语言库函数(不依赖于系统) Linux系 ...
- linux 打开关闭文件,Linux系统编程-文件打开关闭
一.文件描述符 对于Linux而言,所有对设备或文件的操作都是通过文件描述符进行的.当打开或者创建一个文件的时候,内核向进程返回一个文件描述符(非负整数).后续对文件的操作只需通过该文件描述符,内核记 ...
- 【Linux系统编程】可重入函数和不可重入函数
在实时系统的设计中,经常会出现多个任务调用同一个函数的情况.如果有一个函数不幸被设计成为这样:那么不同任务调用这个函数时可能修改其他任务调用这个函数的数据,从而导致不可预料的后果.这样的函数是不安全的 ...
最新文章
- AI如何反低俗?今日头条推内容检测工具“灵犬”3.0,首次公开其技术原理
- 小程序开发过程注意事项
- arduino 上传项目出错_Arduino多核编程:简单例子
- python nan判断_Python数据分析:Numpy基本操作
- 寡头时代——新的希望还是?
- 马化腾:5G和AI双核驱动下,产业互联网的春天来了
- [MySQL FAQ]系列 -- 如何利用触发器实现账户权限审计
- 原创 leetcode/力扣 背包问题大总结,BAT程序员完整学习手册PDF开放下载!
- pcsx2解决竖线问题:
- python中forward是什么意思_pytorch 中forward 的用法与解释说明
- My console windows won't go away
- 获取自己win10系统的产品密匙
- [SAP ABAP开发技术总结]SD销售订单定价过程
- HTML5实现简单留言板1
- ubuntu22.04 安装ROS2
- k8s 应用更新策略:灰度发布和蓝绿发布
- C:素数(质数)的判断以及输出
- catboost 的实例应用附带特征重要度打印
- 使用luckysheet实现excel导入导出
- npm ERR While resolving: vue-admin-template@3.8.0问题的解决方案
热门文章
- 详解曼孚科技SEED数据服务平台(2):自由标注模式
- Gdevops 2018北京站归来
- numpy代码实现逻辑回归模型
- Markdown中的LaTeX公式——希腊字母详解
- Mybatis使用xml方式配置
- sed linux 分隔符,你可以在sed中使用哪些分隔符?
- 笔记本电脑双击计算机却是系统画面,双击我的电脑打不开 打不开的解决方法【方法介绍】...
- 2021-06-20-父亲节随笔
- 论文推荐:Minimally distorted Adversarial Examples with a Fast Adaptive Boundary Attack
- 从入门到冠军 中国移动人群画像赛TOP1经验分享