文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>C语言中的跳转函数

C语言中的跳转函数

时间:2010-10-29  来源:juxiangwu

/*
 * main.c
 *
 *  Created on: Oct 29, 2010
 *      Author: jenson
 */

#include <setjmp.h>
#include <stdio.h>

jmp_buf ebuf;
void fun(void);
int main(){

    int i;
    printf("1 ");
    i = setjmp(ebuf);
    if(i == 0){
        fun();
        printf("this will not be printed.\n");
    }
    printf("%d\n",i);
    return 0;
}

void fun(void){
    printf("3 ");
    longjmp(ebuf,5);
}

宏函数setjmp在缓冲区ebuf中保存了系统堆栈内容,以供函数longjmp以后使用。调用宏函数setjmp时,返回值为零。然后函数longjmp把一个变元传递给setjmp()函数,该值(恒为非零)就是调用longjmp后出现的setjmp值。
相关阅读 更多 +
排行榜 更多 +
我狙击打的贼准

我狙击打的贼准

飞行射击 下载
枪战突击

枪战突击

飞行射击 下载
其乐无穷

其乐无穷

飞行射击 下载