使用fdopen来转换open文件描述符来编写fopen

1、fdopen(int fd, const char *type)的介绍

比如一写特殊文件不能用io打开,我们先要用open函数得到文件描述符,也就是这个fdopen函数的第一个参数,第二个参数是常量,不同类型不同意义,如下图


2、代码演示

#include<stdio.h>
#include<fcntl.h>
 
int main(void)
{
   FILE *fp;
   int fd;
   if ((fp = fopen("hello.txt", "w+")) == NULL) {
       printf("fopen file error\n");
       return 0;
   }
   fprintf(fp, "hello word\n");
   fclose(fp);
   if ((fd = open("hello.txt", O_RDWR)) == -1) {
       printf("open file fail\n");
       return 0;
   }
   if ((fp = fdopen(fd, "a+")) == NULL) {
       printf("fdopen open\n");
       return 0;
   }
   fprintf(fp, "linux c program");
   fclose(fp);
   return 0;

3、结果展示



原文链接:https://blog.csdn.net/u011068702/article/details/54315063
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值