文件I/O需要注意的几点...

本文介绍了文件I/O中open函数的几个重要标志,如o_nonblock、o_trunc、o_excl和o_noctty,强调了它们在处理特殊文件时的作用。此外,还讨论了creat函数的限制,并推荐使用open创建新文件。最后,详细阐述了dup和dup2函数在复制文件描述符方面的应用,以及如何通过它们改变进程的输入输出。
摘要由CSDN通过智能技术生成
 本来打算从最基本的地方开始讲文件I/O,但是写了一点之后发现自己说的好像都是一些人尽皆知的东西,觉得没有多大的意义,并且浪费口舌,所以,我想写一些大家可能经常忽视的问题,和一些有关文件I/O的一些疑点。好了,废话少说!

       首先说说open函数不经常用到,但是又比较重要的一些标志:

     o_nonblock:以非阻塞的方式打开文件,当我们对一些比较特殊的文件(fifo,块设备文件,字符特殊文件)进行I/O操作的时候,最好使用这个标志,因为在对这类文件进行I/O操作的时候,属于慢速的系统调用,这类系统调用会使调用进程阻塞于此,如果不希望你的程序执行到这里而停住,那么就请使用这个标志吧!

       o_trunc:当是以写或读写的方式打开文件时,会截断文件。

       o_excl:这个标志一般用在创建文件的时候,当同时指定o_creat时,首先会判断文件是否存在,如果存在,则此次调用就会返回出错,否则就会创建此文件。

       o_noctty:如果打开的文件是与一个终端相关联的,如果指定此标志,则此终端不会成为调用进行的控制终端。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值