文件的打开及创建

文件的打开及创建
打开的API:open
open某个文件,会返回某个文件的描述符,open的返回值就是文件描述符。
查看man手册man 2 open 来查看信息。
在这里插入图片描述
open的第一个参数 (*pathname)是要打开哪个文件,第二个参数(flags)是用那种方式打开文件。
(最常用的文件打开方式:O_RDONLY只读打开,O_WRONLY只写打开,O_RDWR可读可写打开,O_CREAT创建文件)
(注释:
1.可读 r 4
2.可写 w 2
3.执行 x 1
4.0600: 给文件的所有者,所有者就是登录linux的用户为0600中的6,6代表4+2(可读可写的意思r+w),剩下的0先不作为了解,照着用就行),

1.判断文件是否存在,如果存在返回整数,否则返回负数

#include <sys/types.h>
#include <sys/stat.h> /*前三行为open的头文件  man 2 open*/
#include <fcntl.h>
#include <stdio.h>

int   main()
{
         int  fd;

         fd=open("./file1",O_RDWR);
  /*以可读可写的方式打开某个文件,例如file1*/

         printf("fd=%d\n",fd);
         return 0;
}

文件存在输出的结果:
在这里插入图片描述
文件不存在输出的结果:
在这里插入图片描述
2.如果文件不存在,需要创建文件
创建的API: O_CREATE

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>

int   main()
{
         int  fd;

	 fd=open("./file1",O_RDWR);//打开file1

	 if(fd==-1)
       {
          printf("open file1 failed\n");
        /*如果等于-1的话输出失败*/
        
	      fd=open("./file1",O_RDWR|O_CREAT,0600);
	      /*可读可写并创建打开file1*/

              if(fd>0)
	      {
	        printf("create file1  success\n");
	      }
	         /*大于0则打印成功*/
	             }

	       printf("fd=%d\n",fd);
           return 0;
}

存在文件:在这里插入图片描述
不存在文件要创建文件:
在这里插入图片描述
可读可写可执行生成可执行程序a.out
在这里插入图片描述
x代表可执行的意思

@上官可编程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值