linux下高级编程的特点;涉及到内核向用户空间提供的接口(函数)
接口的功能 参数 返回值
I/O
文件IO
头文件:unistd.h fcntl.h
是从用户空间角度考虑的输入输出
从内核读数据或从文件中读数据叫 输入 read函数
写数据到内核或写数据到文件中叫 输出 write 函数
打开或创建一个文件 open函数
关闭一个文件 close函数
open(char*,flag,mode)
char* 要打开的文件名和路径 一般用命令行参数传入(main参数)
{
参数2(flags)
flags分为两类:主类,副类
主类:O_RDONLY 以只读方式打开 / O_WRONLY 以只写方式打开 /O_RDWR 以可读可写方式打开
三这是互斥的
副类:
O_CREAT 如果文件不存在则创建该文件
O_EXCL 如果使用O_CREAT选项且文件存在,则返回错误消息
O_NOCTTY 如果文件为终端,那么终端不可以调用open系统调用的那个进程的控制终端
O_TRUNC 打开一个文件删除文件中原有数据
O_APPEND 以追加的方式打开不删除里面数据
主副可以配合使用,例如:O_RDWR|O_CREAT|O_TRUNC
————————————————
版权声明:本文为优快云博主「大根菌」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/weixin_39296438/article/details/79422068
}
返回值 成功返回文件描述符,它是一个非负的正参数 。即文件ID号
出错返回-1
linux中存在掩码umask 可用umask查看也可用umask+xxx来修改

本文详细介绍了Linux下高级编程中的I/O接口,包括文件IO的open、read、write、close函数,以及标准IO和目录IO的相关操作。讨论了文件描述符、I/O模式、文件权限等内容,并提到了标准输入输出、库缓存和系统调用的区别。
最低0.47元/天 解锁文章
2472

被折叠的 条评论
为什么被折叠?



