C 语言学习手册

免费学习 完整知识体系 快速检索 C11 / C17 标准

C 语言学习手册《setjmp / longjmp 非本地跳转》:用于错误处理,类似 goto 但可跨函数。 #include <setjmp.h> jmp_buf env; void func() { longjmp(env, 1); // 跳回 setjmp 处 } int m...

进阶主题

setjmp / longjmp 非本地跳转

【详细说明 & 代码示例】
用于错误处理,类似 goto 但可跨函数。
#include <setjmp.h>
jmp_buf env;
void func() {
    longjmp(env, 1);  // 跳回 setjmp 处
}
int main() {
    if (setjmp(env) == 0) {
        printf("第一次执行\n");
        func();
    } else {
        printf("跳转回来\n");
    }
}

学习提示:建议在本地编译环境(如 GCC)中运行示例代码,观察输出结果,加深理解。

全部章节目录(共 54 个知识点)

数据类型 (1个知识点)

数组 (2个知识点)

使用说明

  • • 本手册涵盖 C 语言从入门到进阶的完整知识体系
  • • 在搜索框输入关键词,快速定位相关知识点
  • • 点击条目标题进入详情页,查看详细说明与代码示例
  • • 页面按分类展示所有知识点,方便系统性学习
  • • 建议在本地编译环境(如 GCC)中运行示例代码,观察结果