我有几个与setjmp/longjmp用法相关的问题:
setjmp(jmp___buf stackVariables)返回0的用途是什么?这是一个默认值,我们无法控制。
setjmp(stackVariables)的唯一意义是将堆栈推入stackVariables中。基本上,0告诉我们堆栈是否成功推入stack_variables。
只有在从longjmp返回时,值为非零(任何非零)的情况。从longjmp返回意味着什么,何时从longjmp返回,当处理异常时从longjmp返回。这个设置真的很令人困惑。
请有人将其与try/throw和catch联系起来。如果提供一些setjmp/longjmp的好例子,那就太好了。
longJmp像throw一样,在可能引发异常的地方之后调用。
谢谢。