#include #include int main() { volatile int i = 0; jmp_buf buf; int ret = setjmp(buf); switch (ret) { case 0 : printf("|-> "); break; // primer retorno case 1 : printf("--> "); break; // segundo retorno default: printf("Error: setjmp(buf) = %i\n", ret); break; } printf("%i ", i); i = i + 1; if (i < 5) longjmp(buf, 1 /* no cero */); // salto no local puts(""); }