C语言文件指针和文件描述符相互转换
2016-12-21 19:32
260 查看
记录一下:文件指针向文件描述符转换的时候用fileno()函数没问题,然而文件描述符向文件指针转换的时候却出现问题,大于2以上的值就出错 用fdopen()函数。
结果采用iob_func()函数却可以,暂时记录一下,后面有时间再探讨其中的原因。
结果采用iob_func()函数却可以,暂时记录一下,后面有时间再探讨其中的原因。
char* s = "hello k7k!"; FILE* fp1 = fopen("x.txt", "w+"); fprintf(fp1, "%s\n", s); int fd1 = fileno(fp1); printf("t1 fd:%d \n", fd1); FILE* fp2 = (&__iob_func()[fd1]); fprintf(fp2, "%s\n", s); int fd2 = fileno(fp2); printf("t2 fd:%d \n", fd2);这样没问题。iob_func()函数原理到底是咋样的.
相关文章推荐
- C语言文件指针与文件描述符之间可以相互转换
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换(完整版,收集,整理)
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- 文件指针/句柄、文件描述符、文件路径的相互转换
- Linux C语言 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- 文件指针和文件描述符之间的相互转换 fd---->fp 和 fp---->fd
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换(完整版,收集,整理)
- 文件指针和文件描述符之间的相互转换 fd---->fp 和 fp---->fd
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换
- C语言--字符串和数字的相互转换
- C语言中长短整型数据之间的相互转换及运算-其实很简单
- C语言--字符串和数字的相互转换
- C语言实现字节流与十六进制字符串的相互转换
- 文件指针/句柄(FILE*)、文件描述符(fd)以及 文件路径(filepath)的相互转换(转)
- C语言字符串与数字相互转换