C++ 如何获取要记录的内部错误消息?
我正在使用perror:C++ 如何获取要记录的内部错误消息?,c++,c,C++,C,我正在使用perror: perror("Error message:"); 当使用上述命令时,它将显示传递给字符串的消息,后跟发生的实际错误。这是一个标准函数,但是我想将其记录到一个文件中,如何获取与此相关的实际错误以便记录它?您可以使用以下代码: #include <stdio.h> #include <stdlib.h> #include <errno.h> int main() { FILE* filePtr;
perror("Error message:");
当使用上述命令时,它将显示传递给字符串的消息,后跟发生的实际错误。这是一个标准函数,但是我想将其记录到一个文件中,如何获取与此相关的实际错误以便记录它?您可以使用以下代码:
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
int main() {
FILE* filePtr;
filePtr = fopen (logFilePath, "a");
//...
//some code
//...
if(critical_part){
fprintf(filePtr, "errno :%s Error in critical part - line 123\n",strerror(errno));
}
}
#包括
#包括
#包括
int main(){
文件*filePtr;
filePtr=fopen(logFilePath,“a”);
//...
//一些代码
//...
if(关键部分){
fprintf(filePtr,“errno:%s关键部分错误-第123行”,strerror(errno));
}
}
使用fprintf()
,strerror()
和errno
@Shawn添加答案?