📄 built-in-setjmp.c
字号:
extern int strcmp(const char *, const char *);extern char *strcpy(char *, const char *);extern void abort(void);extern void exit(int);void *buf[20];void __attribute__((noinline))sub2 (void){ __builtin_longjmp (buf, 1);}intmain (){ char *p = (char *) __builtin_alloca (20); strcpy (p, "test"); if (__builtin_setjmp (buf)) { if (strcmp (p, "test") != 0) abort (); exit (0); } { int *q = (int *) __builtin_alloca (p[2] * sizeof (int)); int i; for (i = 0; i < p[2]; i++) q[i] = 0; while (1) sub2 (); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -