首页 > 代码库 > 《Unix环境高级编程》 阅读笔记之三 - 文件I/O
《Unix环境高级编程》 阅读笔记之三 - 文件I/O
unix下错误大多数返回负整数或者错误码,0是错误码.
1.每个文件被打开时都会返回一个文件描述符
2.unix中标准输入 输出 错误码 文件描述符分别为 0 1 2,POSIX.1中被替换成常数 STDIN_FILENO,STDOUT_FILENO,STRERR_FILENO(在unistd.h文件中)
3.Open函数使用(不必记住,多写,多练,就记住了,不明白查手册,参数太多)
4.NAME_MAX=14,文件名如果超过这个值,会自动截短,不过BSD系统会报错(ENAMETOOLONG),不仅仅是文件目录的问题,调用函数时候也会出问题
5.create(pathname,mode)函数创建一个新文件,成功返回fd,失败-1,也可以用open创建,该函数是以只写方式创建一个文件.
6.close(int fd)函数关闭一个文件,不过在进程结束后会自动关闭,不过要有习惯的写上去,不然会出大问题(nonblock).
7.lseek函数 只修改偏移量,不进行I/O操作
(每个进程都共享同一个V节点)
关于原子操作:
说白了就是每次进行文件write操作之前把偏移量指向尾端......自动的,之前貌似要手动lseek
(Ps:原子操作不止这一种)
关于dup和dup2:
Fcntl 用于修改文件标志值
《Unix环境高级编程》 阅读笔记之三 - 文件I/O
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。