MST

星途 面试题库

面试题:C语言中Linux文件系统调用之open函数

在Linux环境下使用C语言编程,若要以读写且创建新文件(若文件不存在)的方式打开一个文件,权限设置为0644,应如何使用open函数?请写出关键代码片段,并解释open函数各参数的含义。
33.9万 热度难度
编程语言C

知识考点

AI 面试

面试题答案

一键面试
#include <fcntl.h>
#include <unistd.h>

// 关键代码片段
int fd = open("your_file_name", O_RDWR | O_CREAT, 0644);
if (fd == -1) {
    // 处理打开文件失败的情况
    perror("open");
    return -1;
}

open函数参数含义:

  • 第一个参数"your_file_name":要打开或创建的文件名。
  • 第二个参数O_RDWR | O_CREAT
    • O_RDWR表示以读写方式打开文件。
    • O_CREAT表示如果文件不存在则创建该文件。
  • 第三个参数0644:当使用O_CREAT标志创建新文件时,此参数用于指定新文件的权限。权限值0644表示文件所有者有读写权限,同组用户有读权限,其他用户有读权限。