完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 michael_llh 于 2016-8-7 15:22 编辑
1.fcntl函数说明 该函数是一个多功能的文件管理工具箱,既然我们说这个函数是一个工具箱,那么他的功能就很多种。 这个函数接受两个形参和一个变参。 第一个形参是fd,表示要设置的文件的描述符 第二个形参是cmd,表示要实现的功能,后面的变参就是取决于我们cmd的选择来决定的。 举个例子,比如说cmd选择为F_DUPFD就代表着说是复制文件描述符,这个功能是和之前说的dup2是类似的,选择这个功能的时候我们后面的变参就可以加上一个数字,但是这个数字和dup2是有一定区别的,dup是指定文件描述符,成功的话就是返回这个文件描述符,而fcntl的这个功能是返回大于等于这个指定数字,且是最小的是数字的文件描述符。 关于fcntl还有很多cmd,我们可以通过查看man手册中得知,这里不再过多描述了。cmd有一个特点就是所有的都是类似F_XXX的形式。 2. 标准IO和文件IO的区别 我们之前说提到的Open函数和Close函数就是属于文件IO,是属于Linux提供的系统调用,但是这两个函数在Windows底下是没有的。那么标准IO就是我们的C语言当中提供的库函数,这个是在Linux和Windows底下都可以用的。也就是说C语言的标准IO当中对文件IO进行了一个新的封装,以便于该函数能够跨平台进行使用。在性能上标准IO也是比较好的。 3.常见的标准IO函数: fopen、fclose、fwrite、fread、fflush、fseek 他们的使用方法和文件IO是类似的。具体的使用方法我们还是通过man手册进行查看。 |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
「含关键代码」基于AM3352/AM3354/AM3359的Linux开发案例分享
4867 浏览 0 评论
87355 浏览 0 评论
【高手问答】如何做到精通linux技术?资深工程师带你突破难点
4673 浏览 2 评论
3565 浏览 2 评论
解读Linux :先从创建一个文件夹用来存放jdk压缩文件开始
2451 浏览 0 评论
1947浏览 3评论
这是i.mx6ull的关于usb的宏定义,能解释下这些宏定义的意思
1317浏览 1评论
1224浏览 1评论
求解:aarch64交叉编译工具已经安装成功,环境变量已经配置,怎么将系统架构切换为ARM的架构
1293浏览 0评论
电脑和虚拟机可以互ping,电脑和开发板也可以互ping,但是虚拟机和开发板ping不通是什么原因
1209浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-22 07:07 , Processed in 1.132866 second(s), Total 70, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号