简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长!
优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀
人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.
1.前言
本篇目的:理解fileno函数用法。
在C++中,fileno
函数通常用于与C库函数一起使用,以获取FILE
指针对应的文件描述符。可以通过将文件流作为参数传递给fileno
函数来获取文件描述符。
2.应用实例
#include <iostream>
#include <cstdio>
int main() {
// 打开文件
FILE* file = fopen("example.txt", "r");
if (file == nullptr) {
std::cerr << "无法打开文件" << std::endl;
return 1;
}
//获取文件描述符,即将FILE*类型转为文件描述符类型
int fd = fileno(file);
// 从文件描述符读取数据
char buffer[100];
ssize_t bytesRead = read(fd, buffer, sizeof(buffer));
if (bytesRead == -1) {
std::cerr << "读取文件出错" << std::endl;
fclose(file);
return 1;
}
// 输出读取的数据
std::cout << "读取的数据: " << std::string(buffer, bytesRead) << std::endl;
// 关闭文件
fclose(file);
return 0;
}