我想在 C 中执行以下操作:
doSomthing(test_arg1); // first time
check_if_everything_good();
doSomething(test_arg2); // second time
check_if_everything_good();
doSomething(test_arg3); // third time
check_if_everything_good();
这个想法是,在我调用 doSomething() 之后,我想通过调用 check_if_everything_good() 来确保函数调用没有破坏其他任何东西。如果 doSomething() 损坏了某些东西, check_if_everything_good() 在第二次 doSomething() 调用之前返回。
但是,我想避免每次在 doSomething() {check_if_everything_good 很昂贵}之后调用 check_if_everything_good()。有没有办法可以在 C 中有效地实现这一点?可能类似于 java 中的 try/catch