我的编程空间,编程开发者的网络收藏夹
学习永远不晚

详解Linux下的文件标述符和文件指针

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

详解Linux下的文件标述符和文件指针

Linux下的文件标述符和文件指针

文件标识符:

首先我们来了解一下文件标识符是什么东西?

文件描述符是计算机科学中的一个术语,是一个用于表述只想文件的引用的抽象化概念。

在linux当中,每个进程会在进程控制块(PCB)当中保存着一份文件描述符表,文件描述符就是这个表的索引,每个表都有一个指

向已经打开文件的指针。

每个linux进程都应该有三个标准的文件描述符,对应三个标准流。

整数值 名称 (unistd.h)符号常量 (stdio.h)文件流 0 Standard input STDIN_FILENO stdin 1 Standard output STDOUT_FILENO stdout 2 Standard error STDERR_FILENO stderr

文件描述符在形式上是一个非负整数,实际上,它是一个索引值,指向内核为每一个进程所维护的该进程打开文件的记录表。当程

序打开一个现有文件或者创建一个新文件时,内核向进程返回一个文件描述符。在程序设计中,一些涉及底层的程序编写往往会围

绕着文件描述符展开。但是文件描述符这一概念往往只适用于UNIX、Linux这样的操作系统

与文件描述符相关的操作:

功能 操作 文件描述符生成 open()、socket()、pipe()等 与单一文件描述符相关的操作 read()、write()、send()、fchmod()等 与复数文件描述符相关的操作 select()、poll()等 与文件描述符表相关度的操作 close()、dup()等

文件指针:

文件指针是C语言当中我们所学习的东西,C语言当中用一个指针变量指向一个文件,这个指针就被称为文件指针。通过文件指针我们可以对所指的文件进行各种的操作。C语言当中使用的是文件指针而不是文件描述符做为I/O的句柄。文件指针指向进程用户区中的一个被称为FILE结构的数据结构。FILE结构包含一个缓冲区和一个文件描述符。

文件指针式C语言的通用的格式,所以相对来说,更加便于移植.

我们通常来获取文件指针:


FILE *fp = fopen("test.txt","r");

获取到指针以后,我们就可以获得指针当中文件描述符的信息。

文件描述符是唯一的,但是文件指针不是唯一的,文件指针指向的对象是唯一的。

文件标述符和文件指针的转换:


int fileno(FILE *stream);

FILE *fdopen(int fd,const char *mode);

fdopen第一个参数是一个打开的文件描述符,mode是表示打开方式的字符串,和fopen相同,比如说“w”或者“r”.

fileno函数,它返回和文件流对应的文件描述符,失败返回-1。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

详解Linux下的文件标述符和文件指针

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

详解Linux下的文件标述符和文件指针

Linux下的文件标述符和文件指针 文件标识符: 首先我们来了解一下文件标识符是什么东西 文件描述符是计算机科学中的一个术语,是一个用于表述只想文件的引用的抽象化概念。 在linux当中,每个进程会在进程控制块(PCB)当中保存着一份文件描
2022-06-04

Linux下文件标述符和文件指针的示例分析

这篇文章主要介绍了Linux下文件标述符和文件指针的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 Linux下的文件标述符和文件指针文件标识符:首先我们来了解一
2023-06-09

Linux的文件描述符、文件指针、索引节点详情

目录linux--文件描述符、文件指针、索引节点一、Linux —— 文件描述符1、文件描述符 Fd2、系统级的文件描述符表3、文件系统的inode表二、文件指针 *FILE三、索引节点 Inode
2022-06-04

详解Linux指令文件覆盖和文件追加

1.指令>和>>区别 指令 > : 如果文件存在,将原来文件的内容覆盖;原文件不存在则创建文件,再添加信息。 指令 >>:不会覆盖原文件内容,将内容追加到文件的尾部。 2.基本语法 (理解>和>>
2022-06-04

Bash中的&符号和文件描述符如何理解

这篇文章将为大家详细讲解有关Bash中的&符号和文件描述符如何理解,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在我们探究大多数链式 Bash 命令中出现的所有的杂项符号(&、|、;、>、<
2023-06-16

Linux下怎么查看指定文件夹和文件的大小

本篇内容介绍了“Linux下怎么查看指定文件夹和文件的大小”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!df命令:查看目前所有文件系统的可用
2023-06-13

linux下文件夹和文件的字符集编码方式转换

这篇文章主要讲解了“linux下文件夹和文件的字符集编码方式转换”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“linux下文件夹和文件的字符集编码方式转换”吧!网站有一些课件资源是从wind
2023-06-13

详解Linux下find查找文件命令和grep查找文件命令

目录一、find命令1.按文件名2.按文件类型查询3.按照文件大小查找4.按照文件日期查找4.1按照创建日期查找4.2按照修改日期查找4.3按照访问日期查找5.按深度查找5.1查找起始点以下n层的目
2022-06-05

Linux下/var/run/目录下的pid文件详解及pid文件作用

先给大家介绍下linux下/var/run/目录下的pid文件,具体详解如下所示: linux系统中/var/run/目录下的*.pid文件是一个文本文件,其内容只有一行,即某个进程的PID。.pid文件的作用是防止进程启动多个副本,只有获
2022-06-04

Linux下.tar.xz文件的解压教程详解

前言 对于xz这个压缩相信很多人陌生,但xz是绝大数linux默认就带的一个压缩工具,xz格式比7z还要小。 最近在下载某个源码包的时候遇到的这种压缩格式,乘此机会分享一下xz的压缩与解压方法。 安装 如果系统没有xz命令,需要进行安装,安
2022-06-04

win7使用鼠标拖动文件指针无法移动怎么办?win7鼠标拖动文件指针无法移动的解决方法

win7系统经常使用鼠标拖动文件,将文件移动到合适的位置,但是一些用户在win7系统使用鼠标拖动文件,指针一直无法移动,该如何解决呢?下面我们的小编和大家分享通过设置本地www.cppcns.com组策略编辑器来解决问题的方法。解决方法:1
2023-05-20

Linux下core文件的使用方法详解

前言 有时候程序会异常退出而不带任何日志,此时就可以使用 code 文件进行分析,它会记录程序运行的内存,寄存器,堆栈指针等信息 什么是core文件通常在 linux 下遇到程序异常退出或者中止,我们都会使用 core 文件进行分析
2022-06-04

Linux下文件的压缩和解压方法

本篇内容介绍了“Linux下文件的压缩和解压方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!gzip功能说明:解压文件。语  法:gzip
2023-06-12

Linux下文件夹的移动与复制详解

目录1. 复制文件夹2. 移动文件夹3. 常见应用案例a. 复制备份数据b. 迁移文件夹到其他位置c. 归档数据4. 结论在linux系统中,移动和复制文件夹是常见的任务。无论你是想要备份数据、迁移文件夹到其他位置还是归档数据,掌握文件夹的
2023-04-19

如何解决Linux下文件名、文件和mp3名字、pdf的乱码问题

这篇文章主要介绍“如何解决Linux下文件名、文件和mp3名字、pdf的乱码问题”,在日常操作中,相信很多人在如何解决Linux下文件名、文件和mp3名字、pdf的乱码问题问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对
2023-06-13

详解Linux下的sudo及其配置文件/etc/sudoers的详细配置

详解Linux下的sudo及其配置文件/etc/sudoers的详细配置 1.sudo介绍sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su
2022-06-04

编程热搜

目录