在C++中,fopen函数用于打开一个文件以进行读取或写入
fopen函数成功打开文件时,它会返回一个指向FILE对象的指针。如果打开文件失败,fopen将返回一个空指针(NULL)。因此,可以通过检查返回值来判断是否出现了错误。#include<iostream>
#include <cstdio>
int main() {
FILE* file = fopen("example.txt", "r");
if (file == NULL) {
std::cerr << "Error opening file."<< std::endl;
return 1;
}
// 文件操作...
fclose(file);
return 0;
}
errno和strerror:fopen函数在出现错误时会设置全局变量errno。可以使用strerror函数将errno转换为描述错误的字符串。#include<iostream>
#include <cstdio>
#include <cerrno>
#include <cstring>
int main() {
FILE* file = fopen("example.txt", "r");
if (file == NULL) {
std::cerr << "Error opening file: "<< strerror(errno)<< std::endl;
return 1;
}
// 文件操作...
fclose(file);
return 0;
}
请注意,errno和strerror函数在<cerrno>和<cstring>头文件中定义。这些方法可以帮助您更好地了解fopen函数出现错误的原因,并采取相应的措施。