C库 setjmp
#include <stdio.h>
#include <string.h>
#include <setjmp.h>
setjmp第一次返回0 ,longjmp影响setjmp 的返回值
int main()
{
static jmp_buf jmpbuf;
int a = setjmp(jmpbuf); //创建本地的jmp_buf缓冲区并且初始化,用于longjmp跳转此处
if (!a)
{
longjmp(jmpbuf,3);
}
else
{
printf("hello \n\r");
}
system("pause");
return 0;
}
------------恢复内容开始------------
#include <stdio.h>
#include <string.h>
#include <setjmp.h>
setjmp第一次返回0 ,longjmp影响setjmp 的返回值
int main()
{
static jmp_buf jmpbuf;
int a = setjmp(jmpbuf); //创建本地的jmp_buf缓冲区并且初始化,用于longjmp跳转此处
if (!a)
{
longjmp(jmpbuf,3);
}
else
{
printf("hello \n\r");
}
system("pause");
return 0;
}

浙公网安备 33010602011771号