您的位置:首页 > 编程语言 > C语言/C++

C语言的异常处理

2006-08-22 15:35 155 查看
#include <setjmp.h>

int setjmp(jmp_buf env);

void longjmp(jmpbuf env, int retval);

setjmp在env中缓存当前栈的内容,以供后面longjmp使用,并返回0。

longjmp从env中恢复栈的内容,然后触发一个从最近一次初始化env的setjmp调用的返回.
然后setjmp返回,并带有非0的返回值retval.

int sigsetjmp(sigjmp_buf env, int savesigs);

void siglongjmp(sigjmp_buf env, int retval);

这两个函数使信号处理程序转移到一个特殊的代码位置,而不是返回到被信号到达中断了的指令的位置。 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  语言 c include