发生错误时,我希望我的C代码在退出程序之前存储错误.是否建议将stderr存储到文件(例如/home/logs.txt),或者建议使用不同的方法来保存日志/错误报告(考虑编程环境是Linux).例如,对于下面的代码,我如何应用该方法在/home/log.txt或/ home / log上存储日志/错误消息
FILE *fp1;
fp1 = fopen("/sys/class/gpio/export","w");
if(fp1 == NULL){
fprintf(stderr, "errno:%s - opening GPIO136 failed - line 739\n ", strerror(errno));
close(fp1);
exit(1);
}
谢谢.
解决方法:
如果始终使用stderr打印出所有错误消息,则可以将输出重定向到特定文件.
$program 2>~/logs.txt
要获得更好的日志记录工具,您可以使用: