正常情况下,if..else只能执行其中一个,因为如果判断的条件为真,则执行if里面的语句,如果判断为假,则执行else里面的语句。
那怎样能让if和else里面的语句都执行呢?
看看下面的代码吧^^
这个是利用C语言的goto实现的。
再看看下面这段代码吧:^^
看不懂?^^其实一接触我也不知道为什么
在《C专家编程》第128页有说:
setjmp
语法:
#include <setjmp.h> int setjmp( jmp_buf envbuf ); |
功能: 函数将系统栈保存于envbuf中,以供以后调用longjmp()。当第一次调用setjmp(),它的返回值为零。之后调用longjmp(),longjmp()的第二个参数即为setjmp()的返回值。
longjmp
语法:
#include <setjmp.h> void longjmp( jmp_buf envbuf, int status ); |