Linux下文件打开及创建

1.打开一个文件,其中第一个文件“mynew.c”是不存在的,第二个是真实存在的

 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
#include<stdio.h>
int main()
{
    
    
        int fd,fs;

        fd=open("./mynew.c",O_RDWR);
        fs=open("./f.c",O_RDWR);
        printf("fd=%d\n",fd);
        printf("fs=%d\n",fs);


        return 0;
}

输出结果为:
在这里插入图片描述
第一个的确找不到,返回值为负数。

然后改一下代码。如果没有找到文件就创建一个新的文件

 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
#include<stdio.h>
int main()
{
    
    
        int fd;

        fd=open("./qqq.c",O_RDWR);
        if(fd==-1)
        {
    
    
                printf("open file failed!\n");
                fd=open("./qqq.c",O_RDWR|O_CREAT,0600);
                if(fd>=0)
                {
    
    
                        printf("creat file success!\n");
                }

        }


        return 0;
}

在看结果之前先看看文件夹里面有什么些文件着(反正没有qqq.c这个文件对吧)
在这里插入图片描述
然后:
在这里插入图片描述
再看看现在文件夹里面有没有qqq.c这个文件,理论上是应该有的哈
在这里插入图片描述
文件创建成功

猜你喜欢

转载自blog.csdn.net/qq_43482790/article/details/115042558