C Tutorial/setjmp.h/setjmp
setjmp
Item Value Header file setjmp.h Declaration int setjmp(jmp_buf envbuf); Function saves the contents of the system stack in the buffer envbuf for later use by longjmp(). Return returns zero upon invocation.
<source lang="cpp">#include <setjmp.h>
#include <stdio.h> jmp_buf ebuf; void f2(void); int main(void) { int i; printf("1 "); i = setjmp(ebuf); if(i == 0) { f2(); printf("This will not be printed."); } printf("%d", i); return 0; } void f2(void) { printf("2 "); longjmp(ebuf, 3); }</source>