打开关闭文件

Unix系统使用 openclose 系统调用来管理文件的打开和关闭。

open 系统调用

  • 原型:int open(char *filename, int flags, mode_t mode)
  • 返回值:成功时返回一个文件描述符(最小的未用描述符),失败时返回-1。
  • flags 参数指定访问模式:
    • O_RDONLY:只读打开。
    • O_WRONLY:只写打开。
    • O_RDWR:读写打开。
  • flags 的附加选项(通过与操作组合):
    • O_CREAT:文件不存在则创建。
    • O_TRUNC:若文件存在,截断为空文件。
    • O_APPEND:追加模式,每次写操作在文件末尾进行。

close 系统调用

  • 原型:int close(int fd)
  • 关闭一个打开的文件描述符,释放内核资源。
  • 注意:关闭一个已关闭的描述符会导致错误(返回值-1)。这一点常在循环中无意触发,需要谨慎处理。

链接到