文件I/O编程 (fcntl)】的更多相关文章

Fcntl函数语法要点所需头文件:#include          #include          #include函数原型:int fcntl(int fd,cmd,struct flock *lock)函数传入值:fd:文件描述符Cmd:F_DUPFD:复制文件描述符    F_GETFD:获得fd的close-on-exec标志,若标志未设置,则文件经过exec函数之后仍保持打开状态.    F_SETFD:设置close-on-exec标志,该标志以参数arg的FD_CLOEXEC…
linux文件I/O用:open.read.write.lseek以及close函数实现了文件的打开.读写等基本操作.fcntl函数可以根据文件描述词来操作文件. 用法: int fcntl(int fd, int cmd); int fcntl(int fd, int cmd, long arg); int fcntl(int fd, int cmd, struct flock*lock); 参数: fd:文件描述词. cmd:操作命令. arg:供命令使用的参数. lock:同上. 有以下操…
lienhua342014-08-29 fcntl 函数可以改变已打开的文件的性质. #include <fcntl.h> int fcntl(int filedes, int cmd, ... /* int arg */); fcntl 函数有 5 种功能: 1. 复制一个现有的描述符(cmd=F_DUPFD). 2. 获取/设置文件描述符标志(cmd=F_GETFD 或F_SETFD). 3. 获取/设置文件状态标志(cmd=F_GETFL 或F_SETFL). 4. 获取/设置异步 I/…
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #define ERR_EXIT( m ) \ do \ { \ perror( m ); \ exit( EXIT_FAILURE ); \ }while( 0 ) //设置某个文件状态 void set_flag( int fd, int flags ); //清除某个文件状态 void clear_…
fcntl函数可以改变已打开的文件的性质. #include <fcntl.h> int fcntl( int filedes, int cmd, ... /* int arg */ ); 返回值:若成功则依赖于cmd,若出错则返回- 在本节的各实例中,第三个参数总是一个整数,与上面所示函数原型中的注释部分相对应.但是在说明记录锁时,第三个参数则是指向一个结构的指针. fcntl函数有5种功能: (1)复制一个现有的描述符(cmd = F_DUPFD ). (2)获得/设置文件描述符标记(cm…
fcntl函数提供了与网络编程相关的如下特性: 非阻塞式I/O.  通过使用F_SETFL命令设置O_NONBLOCK文件状态标志,我们可以把一个套接字设置为非阻塞型. 信号驱动式I/O. 通过使用F_SETFL命令设置O_ASYNC文件状态标志,我们可以把一个套接字设置成O_ASYNC,一旦其状态发生变化,内核就产生一个SIGIO信号. F_SETOWN命令允许我们指定用于接收SIGIO和SIGURG信号的套接字属主(进程ID或进程组ID).其中SIGIO信号是套接字被设置为信号驱动式I/O型…
文件I/O操作在Linux编程时是经常会使用到的一个内容,通常可以把比较大的数据写到一个文件中来进行存储或者与其他进程进行数据传输,这样比写到一个全局数组或指针参数来实现还要方便好多. 一.文件常用操作与相关函数 1.打开或创建一个文件:编写程序时涉及内容——打开或创建文件的路径名称.打开文件的方式(读|写|执行).访问权限(用户|组|其他).实现方式(系统调用|库). ①系统调用方式: #include <fcntl.h> //函数原型声明.flags定义 #include<sys/s…
段东宁 计亚南 (郴州职业技术学院, 湖南 郴州  423000) 摘要: 资源文件是一种能有效地组织.管理和使用资源的文件形式,在软件开发中有着广泛的应用.本文详细介绍了在Delphi编程中资源文件的创建方法和使用技巧. 关键词:Delphi,资源文件,TResourceStream对象,MCISend String 函数 The Application of Resource Files in Delphi Programming DUAN Dong-Ning (Department of…
基本文件命令: 格式为:hadoop fs -cmd <args> cmd的命名通常与unix对应的命令名相同.例如,文件列表命令: hadoop fs -ls 1.添加目录和文件 HDFS有一个默认的工作目录 /user/$USER,其中$USER是你的登录用户名.不过目录不会自动建立,我们现在用mkdir建立它,我使用的是chen作为用户名. hadoop fs -mkdir /user/chen (hadoop的mkdir命令会自动创建父目录,类似于带-p的unix命令) 我们现在放本地…
fcntl可实现对指定文件描述符的各种操作,其函数原型如下: int fcntl(int fd, int cmd, ... /* arg */ ); 头文件 #include <unistd.h> #include <fcntl.h> 操作类型由cmd决定,cmd的取值如下: F_DUPFD:复制文件描述符 F_DUPFD_CLOEXEC:复制文件描述符,新文件描述符被设置了close-on-exec F_GETFD:读取文件描述标识 F_SETFD:设置文件描述标识 F_GETF…