⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testjmp.c

📁 unix环境高级编程第二版配套源代码 unix环境高级编程第二版配套源代码
💻 C
字号:
#include "apue.h"#include <setjmp.h>static void	f1(int, int, int, int);static void	f2(void);static jmp_buf	jmpbuffer;static int		globval;intmain(void){	int				autoval;	register int	regival;	volatile int	volaval;	static int		statval;	globval = 1; autoval = 2; regival = 3; volaval = 4; statval = 5;	if (setjmp(jmpbuffer) != 0) {		printf("after longjmp:\n");		printf("globval = %d, autoval = %d, regival = %d,"		    " volaval = %d, statval = %d\n",		    globval, autoval, regival, volaval, statval);		exit(0);	}	/*	 * Change variables after setjmp, but before longjmp.	 */	globval = 95; autoval = 96; regival = 97; volaval = 98;	statval = 99;	f1(autoval, regival, volaval, statval);	/* never returns */	exit(0);}static voidf1(int i, int j, int k, int l){	printf("in f1():\n");	printf("globval = %d, autoval = %d, regival = %d,"	    " volaval = %d, statval = %d\n", globval, i, j, k, l);	f2();}static voidf2(void){	longjmp(jmpbuffer, 1);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -