Linux IO函数

news2024/11/25 7:43:07

read/write函数:

1.read

#include <unistd.h>

ssize_t read(int fd, void *buf, size_t count);

参数:

    -fd:文件描述符,open得到的,通过这个文件描述符操作某个文件

    -buf:需要读取数据存放的地方,数组的地址;

    -count:指定的数组的大小

返回值:

    -成功:

        >0:返回实际的读取到的字节数

        =0:文件已经读完了

    -失败:

        返回-1,并且设置error

2.write

#include <unistd.h>

ssize_t write(int fd, const void *buf, size_t count);

    参数:

        -fd:文件描述符,open得到的,通过这个文件描述符操作某个文件

        -buf:需要读取数据存放的地方,数组的地址;

        -count:要写的数据的实际的大小

    返回值:

    -成功:

        >0:返回实际的写入的字节数

        =0:没有任何的内容写入

    -失败:

        返回-1,并且设置error

 

lseek函数

#include <sys/types.h>

#include <unistd.h>

    off_t lseek(int fd, off_t offset, int whence);

        参数:

            -fd:文件描述符

            -offset:偏移量

            -whence:

                SEEK_SET

                    设置文件指针的偏移量

                SEEK_CUR

                    设置偏移量:当前位置 + 第二个参数offset的值

                SEEK_END

                    设置偏移量:文件大小 + 第二个参数的值

        返回值:返回文件指针所在的位置

    作用:

        1.移动文件指针到文件头 lseek(fd, 0, SEEK_SET)

        2.获取当前文件指针的位置 lseek(fd, 0, SEEK_CURRENT)

        3.获取文件长度 lseek(fd, 0, SEEK_END)

        4.拓展文件的长度 lseek(fd, 100, SEEK_END)(增加100个字节)需要写一次数据

stat/lstat函数

#include <sys/types.h>

#include <sys/stat.h>

#include <unistd.h>

       1. int stat(const char *pathname, struct stat *statbuf);

作用:获取一个文件相关的信息,如文件大小、权限、Inode、Uid、最近访问时间、最近更改时间、最近改动时间等等

        参数:

            -pathname:操作文件的路径

            -statbuf:结构体变量,传出参数,用于保存获取到的文件的信息

        返回值:

            成功:返回0

            失败:返回-1,设置errno

       2. int lstat(const char *pathname, struct stat *statbuf);

        获取软连接文件的信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1004116.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

3D虚拟情景实训教学系统在法律课堂中的应用

3D虚拟情景实训教学系统是一种基于虚拟现实技术的教育工具&#xff0c;它通过模拟真实的法律场景&#xff0c;让学生能够身临其境地体验法律实践。这种教学方式可以让学生更加深入地理解法律原则和规则&#xff0c;提高他们的法律素养和实践能力。 在传统的法律课堂中&#xff…

一文了解国自然热点“超级增强子”的重要标记——H3K27ac

2023国自然结果已经揭晓&#xff0c;“超级增强子”&#xff08; Super enhancer, SE&#xff09;作为国自然新热点&#xff0c;2023年项目为32个。2019-2023年来总累计项目143项&#xff0c;但累计项目金额达6033万。此外&#xff0c;Pubmed数据统计显示5年间SE影响因子大于10…

二叉树【树的基本概念】

全文目录 树树的概念树的相关概念树的表示树的实际应用 二叉树二叉树的概念二叉树的特殊类型二叉树的性质二叉树的存储结构顺序存储链式存储 堆堆的概念向下调整算法向上调整算法堆的插入堆的删除堆的构建时间复杂度计算 堆排序TOP-K问题 树 树的概念 树是一种非线性的数据结…

华为CD32键盘使用教程

华为CD32键盘使用教程 用爱发电写的教程&#xff01; 最后更新时间&#xff1a;2023.9.12 型号&#xff1a;华为有线键盘CD32 基本使用 此键盘在不安装驱动的情况下可以直接使用&#xff0c;但是不安装驱动指纹识别是无法使用的&#xff01;并且NFC功能只支持华为的部分电脑…

固定资产预算怎么管理的

在现代企业管理中&#xff0c;固定资产预算的管理是一项至关重要的任务。它不仅关系到企业的经济效益&#xff0c;更关系到企业的长远发展。那么&#xff0c;如何进行有效的固定资产预算管理呢&#xff1f; 明确固定资产预算的目标和原则  我们需要明确固定资产预算的目标和…

HCS 中的一些概念(二)

一、Service OM 1、首页&#xff08;资源状态&#xff09; 2、服务列表 计算资源&#xff1a;计算资源又分为可用分区&#xff08;AZ&#xff09;、规格和虚拟机组&#xff0c;可在此处创建虚拟机、虚拟机组、主机组和规格 网络资源&#xff1a;网络资源又分为物理网络…

使用融云 CallPlus SDK,一小时实现一款 1V1 视频应用

9 月 21 日&#xff0c;融云直播课 社交泛娱乐出海最短变现路径如何快速实现一款 1V1 视频应用&#xff1f; 欢迎点击小程序报名~ 1V1 音视频、远程服务类应用的实现利器——融云 CallPlus SDK 上线&#xff01; 关注【融云全球互联网通信云】了解更多 作为新一代音视频通话场…

Transformer模型 | 个人理解

一、Transformer整体架构图 二、Encoder端的输入 以机器翻译任务为例子&#xff0c;训练数据是法语句子“Je suis etudiant”和翻译成英文后的句子“I am a student”。 Inputs是法语句子“ J e {Je } Je s u i s {suis} suis e t u d i a n t {etudiant} etudiant”&#x…

9月16日相约openGauss Meetup(杭州站)

由云和恩墨、图尔兹、浙江鲲鹏、openGauss社区联合主办的“openGauss Meetup &#xff08;杭州站&#xff09;”活动将于9月16日在杭州市拱墅区祥园路108号中国智慧信息产业园G座3楼连廊1号会议室举办&#xff01;我们诚邀您的莅临&#xff01; 扫码报名 数据库作为企业核心的重…

Jetty服务器好处

Jetty可以同时处理大量连接而且可以长时间保持连接&#xff0c;适合于web聊天应用等等。 Jetty的架构简单&#xff0c;因此作为服务器&#xff0c;Jetty可以按需加载组件&#xff0c;减少不需要的组件&#xff0c;减少了服务器内存开销&#xff0c;从而提高服务器性能。 Jetty默…

最新遥感数据与作物模型同化教程

详情点击公众号链接&#xff1a;最新遥感数据与作物模型同化教程一&#xff1a;遥感基础1.遥感平台&#xff08;如无人机&#xff09;与传感器、国内外主要陆地卫星&#xff08;如Landsat、SPOT、HJ、GF&#xff09; 2.遥感基本原理、光谱响应函数、遥感数据处理流程 3.遥感在陆…

接口自动化测试的概述及流程梳理~

接下来开始学习接口自动化测试。 因为之前从来没接触过&#xff0c;所以先了解一些基础知识。 1.接口测试的概述 2.接口自动化测试流程。 接口测试概述 接口&#xff0c;又叫API&#xff08;Application Programming Interface&#xff0c;应用程序编程接口&#xff09;&a…

Java“牵手”天猫商品详情数据,天猫商品详情接口,天猫API接口申请指南

天猫平台API是天猫应用程序编程接口的缩写&#xff0c;它是一套允许程序员从他们的应用程序中访问天猫网站上数据的规范。通过API&#xff0c;程序员可以编写能够与天猫网站交互的程序&#xff0c;从而绕过网页浏览器的限制&#xff0c;直接访问和操作数据。 天猫平台API可以提…

模拟考试系统提升备考效果和成功机会

备考是每位参加考试的学生都非常重视的阶段。为了提高备考效果和增加成功机会&#xff0c;模拟考试系统是一种非常有效的工具。 备考对于任何一位参加考试的学生来说都是至关重要的阶段。无论是应对学校期末考试、入学考试还是国家级考试&#xff0c;备考都需要充分的准备和调…

怎样建立一个班级查分系统?

在现代教育中&#xff0c;建立一个高效的班级查分系统对于老师和家长们来说至关重要。物种草作为一款功能强大的在线教育工具&#xff0c;为教师们提供了一个便捷的方式来管理和分享学生成绩。本文将以物种草的口吻&#xff0c;为你介绍如何建立一个高效的班级查分系统&#xf…

javascript二维数组按指定要求进行对象合并遍历的算法开发

javascript二维数组按指定要求进行对象合并遍历的算法开发 项目原数据项目需求数据格式算法开发 项目原数据 从第三方API获取如何格式的数据&#xff1a; “device”: “二(1)班”,不同班级名称&#xff0c;会重复“name”: “二(1)班-电量”,不同班级的数据标准“value”: 1…

如何初始化静态成员在类中

c - How do I initialize a const data member? - Stack Overflow

安卓逆向 - 某东sign(基于unidbg主动调用)

本文仅供学习交流&#xff0c;只提供关键思路不会给出完整代码&#xff0c;严禁用于非法用途&#xff0c;拒绝转载&#xff0c;若有侵权请联系我删除&#xff01; 目标app&#xff1a;5Lqs5LicYXBwMTEuMy4y 目标接口&#xff1a;aHR0cHM6Ly9hcGkubS5qZC5jb20vY2xpZW50LmFjdGl…

9月1日作业

思维导图 服务器代码 #include<myhead.h>#define PORT 4567 #define IP "192.168.6.225"struct msg //接收到的客户端信息结构体 {char type;char name[20];char txt[128]; };//定义节点类型 typedef struct Node {union{struct sockaddr_in cin; //数据…

springboot+springSecurity+jwt实现登录认证后令牌授权

springbootspringSecurityjwt实现登录认证后令牌授权&#xff08;已绑定整个项目的源码&#xff09; 目录 springbootspringSecurityjwt实现登录认证后令牌授权&#xff08;已绑定整个项目的源码&#xff09;一、自定义数据源登录认证1、实现spring security中UserDetails类2、…