【发布时间】:2016-09-05 17:58:30
【问题描述】:
我已经阅读了很多关于 C 中错误处理的教程和初学者问题。它们(大部分)似乎都朝着这个方向发展:
int main(){
if(condition){
fprintf(stderr, "Something went wrong");
exit(EXIT_FAILURE); // QUIT THE PROGRAM NOW, EXAMPLE: ERROR OPENING FILE
}
exit(0)
}
我的问题:C 中是否有任何特定函数可以让我捕获错误,但只会影响程序(主)退出时的状态?我的想法的例子:
int main(){
if(condition){
fprintf(stderr, "Something went wrong");
// Continue with code but change exit-status for the program to -1 (EXIT_FAILURE)
}
exit(IF ERROR CATCHED = -1)
}
还是我必须创建一些自定义函数或使用一些指针?
【问题讨论】:
-
嘿?如果出现问题,为什么要继续?
-
int status = N; /* ... */ exit(status);? (或者更好的return)