C语言中的read()、write()、fputs()、fgets()
1.read
#include <unistd.h>
ssize_t read(int filedes,void *buf,size_t nbytes);
read函数从filedes指定的已打开文件中读取nbytes字节到buf中。
返回值:读取到的字节数,0代表读到EOF,-1代表出错。
2.write
#include <unistd.h>
ssize_t write(int filedes,const void *buf,size_t nbytes);
write函数向filedes中写入nbytes字节数据,数据来源为buf。
返回值一般等于nbytes,否则就是出错了。
3.fputs
#include <stdio.h>
fputs(char *str,FILE *stream);
把str中零结束符之前的全部文件输入到文件中。
输入完成后,不会增加额外的特殊字符,如换行符等。
4fgets
#include <stdio.h>
char *fgets(char *str,int num,FILE *stream);
函数fgets()从给定的文件流中读取num-1个字符并且把它们转到stream中
5.fread
size_t fread ( void *buffer, size_t size, size_t count, FILE *stream) ;
fread与read的区别:
fread是C标准库。而后者的是UNIX下的系统调用。fread带有缓冲,是read的衍生,或者说fread是通过read实现的。要想直接和硬件打交道,必须用read。
另外,fread操作的对象是file stream,而read操作的对象是: “file descriptor”。
如果文件的大小是8k。你如果用read/write(需要自己设定缓冲区的大小),且只分配了2k的缓存,则要将此文件读出需要做4次系统调用来实际从磁盘上读出。
如果你用fread/fwrite,则系统自动分配缓存,则读出此文件只要一次系统调用从磁盘上读出。
6.fopen
函数原型:FILE * fopen(const char * path, const char * mode);
open 是系统调用 返回的是文件句柄,文件的句柄是文件在文件描述副表里的索引,fopen是C的库函数,返回的是一个指向文件结构的指针。
7.gets
函数原型:char*gets(char*buffer);//读取字符到数组:gets(str);str为数组名。
函数功能:从键盘上输入字符,直至接受到换行符或EOF时停止,并将读取的结果存放在buffer指针所指向的字符数组中。
读取的换行符被转换为null值,做为字符数组的最后一个字符,来结束字符串。
注意:gets函数由于没有指定输入字符大小,所以会无限读取,一旦输入的字符大于数组长度,就会发生内存越界,从而造成程序崩溃或其他数据的错误。
C语言中的read()、write()、fputs()、fgets()相关推荐
- c语言中gets 、getchar 、fgets 、scanf的用法
原文地址:https://www.cnblogs.com/-lyric/p/5118666.html http://c.biancheng.net/view/379.html gets--从标准输入接 ...
- C语言中fscanf的作用,C语言中fgets和fscanf区别详解
搜索热词 C语言中fgets和fscanf区别详解 一.作用上的大概区别: ①fgets:从文件中读取一行数据存入缓冲区(fgets遇到回车才会结束,不对空格和回车做任何转换就录入到缓冲区,结束后再往 ...
- c语言中的fscanf是啥意思,详解C语言中fgets和fscanf区别
fscanf函数是C语言的文件格式读取函数的方法之一,它使用空格.制表符和回车来分割不同的单词,这样可以让我们使用起来更方便,下面就让爱站技术频道小编带你来学习详解C语言中fgets和fscanf区别 ...
- c语言fputc 函数头,简单对比C语言中的fputs()函数和fputc()函数
简单对比C语言中的fputs()函数和fputc()函数 C语言fputc()函数:写文件函数(将一指定字符写入文件流中) 头文件: #include 定义函数: int fputc(int c, F ...
- c++freopen函数_使用示例的C语言中的freopen()函数
c++freopen函数 C语言中的freopen()函数 (freopen() function in C) Prototype: 原型: FILE* freopen(const char *str ...
- c语言中rewind函数_C语言中的rewind()函数与示例
c语言中rewind函数 C中的rewind()函数 (rewind() function in C) The rewind() function is defined in the <stdi ...
- c语言put语句的作用,C语言中put()与puts()的区别?
C语言中put()与puts()的区别? 关注:275 答案:2 mip版 解决时间 2021-02-04 15:47 提问者笑低了眉眼 2021-02-04 12:42 C语言中put()与pu ...
- 浅析C语言中strtol()函数与strtoul()函数的用法
这篇文章主要介绍了浅析C语言中strtol()函数与strtoul()函数的用法,注意其将字符串转换成long型的区别,需要的朋友可以参考下 头文件: ? 1 #include <stdlib. ...
- C语言中的while的意思,C语言中while是什么意思
while n. 时间; 一段时间, 一会儿 wait a while. 等一会儿. it took a long while to do the work. 做这个工作花了许多时间. what ha ...
- c语言中5l是数值或字符常量,C语言练习题-选择题(带答案)
以下为<C语言练习题-选择题(带答案)>的无排版文字预览,完整格式请下载 下载前请仔细阅读文字预览以及下方图片预览.图片预览是什么样的,下载的文档就是什么样的. C语言练习题-选择题(带答 ...
最新文章
- Python3.5源码分析-内建模块builtins初始化
- Effective C++ 之 Item 6 : 若不想使用编译器自动生成的函数,就该明确拒绝
- ActiveX组件及其注册 (轉)
- Ajax(form表单文件上传、请求头之contentType、Ajax传递json数据、Ajax文件上传)
- 展望2018,多媒体开发新趋势
- Shell脚本中字符串的一些常用操作
- Python(9):函数
- 医疗:ICU(10)
- 安装kali linux 2017.1 【二、安装VMware-tools 以及相关问题处理】
- sun java applet,Sun Java运行时环境字体解析Applet权限提升漏洞
- net中 css 控制 GridView 样式
- 红米10X 5G手机电路原理图纸
- 空洞卷积详解(输入输出大小分析)
- 机器学习与算法(8)--局部加权学习算法(LWR)
- 湘潭大学java实验
- Swift之深入解析如何处理非可选的可选项类型
- CSDN博客索引-2
- Elliptic Curve Cryptography: a gentle introduction
- EXCEL——图表数据标签——展示两组比较的绝对值和变化率
- 赛车编程用c语言,钟神赛车 (C++代码)自己AC了都觉得搞笑
热门文章
- DSSMs: Deep Structured Semantic Models
- commander的使用和npm的介绍
- python中eps参数_Matplotlib简介和pyplot的简单使用——输出eps格式图像
- Python---turtle模块---中国国旗的绘画
- Abaqus如何显示单元和节点编号
- Java解析PPT获取文本和图片
- mysql installer汉化_MySQL8安装Installer版的图文教程
- 润迈德医疗通过上市聆讯:预计亏损将增加,霍云飞兄弟持股约33%
- 高中三册(选修)英语
- Elasticsearch 整合机器学习强化排序