From d3462ed95ac59fe5ebc470aa19546d99d177552d Mon Sep 17 00:00:00 2001 From: anon <anon@anon.anon> Date: Sun, 10 Mar 2024 15:57:36 +0100 Subject: [PATCH] Added setjmp_test.cpp --- setjmp_test.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 setjmp_test.cpp diff --git a/setjmp_test.cpp b/setjmp_test.cpp new file mode 100644 index 0000000..99247ec --- /dev/null +++ b/setjmp_test.cpp @@ -0,0 +1,26 @@ +#include <stdio.h> +#include <setjmp.h> + +void f(int* a, int* b){ + *a += 3; + *b += 5; +} + +signed main(){ + int* heap_var = new int(1); + int stack_var = 2; + + jmp_buf buf; + + int j = setjmp(buf); + + printf("heap: %d\nstack: %d\n---\n", *heap_var, stack_var); + + if(j){ + return 0; + } + + f(heap_var, &stack_var); + + longjmp(buf, 1); +}