一个函数里两个setjmp_C语言中setjmp.h的longjmp()函数

一个函数里两个setjmp

We can call this function as an advance version of goto statement but with more dynamic range. The longjump() function allows us to pass parameters to know that the control has been jumped or not.

我们可以将此函数称为goto语句的高级版本,但具有更大的动态范围。 longjump()函数使我们可以传递参数来知道控件是否已跳转。

So how to use this is the question. First thing is to decide point from where you want to jump and then decide to where you want to jump.

因此,如何使用此问题。 第一件事是确定要从哪里跳转的点,然后再确定要跳转的位置。

Before setting these point just make a jum_buf object. Now rest is a cake walk. In this example, I have put the point from where we want to jump inside a function called func by calling the function longjmp(a, 1) with two parameters as the jum_buf object and 1 will be return at the setjump call.

在设置这些点之前,只需创建一个jum_buf对象。 现在休息是轻轻松松。 在此示例中,我通过调用带有两个参数的longjmp(a,1)函数作为jum_buf对象,将要从其中跳转到函数func的位置,在setjump调用中将返回1。

Call the function setjmp() at the point to where you want to jump. The Second parameter from the longjump will be stored in z. This z can be then checked for loops or maybe something else.

在要跳转的位置调用函数setjmp() 。 longjump中的第二个参数将存储在z中 。 然后可以检查此z的循环或其他内容。

setjmp.h- longjmp()函数在C中的示例 (setjmp.h- longjmp() function Example in C)

</ s> </ s> </ s>
#include <stdio.h>
#include <setjmp.h>
//defining the type of the variable
static jmp_buf a;
void func(void)
{
//message for user
printf("Function starts here..\n");
//calling function
longjmp(a, 1);
//message for user
printf("Function ends here..\n");
}
int main()
{
int z;
//message for user
printf("Main starts here..\n");
//setting current value in z
z = setjmp(a);
//condition to display message
if (z != 0)
{
//message for user
printf("longjmp function called\n");
return 0;
}
func();
//message for user
printf("Main ends here..\n");
return 0;
}

Output

输出量

setjmp.h - longjmp() in c language

翻译自: https://www.includehelp.com/c-programs/longjmp-function-of-setjmp-h-in-c.aspx

一个函数里两个setjmp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/541269.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android实现滑动切换图,Android:使用ViewPager实现左右滑动切换图片加点点

图片发自简书App1、引入android-support-v4.jar包&#xff0c;在主布局里加入< ?xml version"1.0" encoding"utf-8"?>< RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.…

html的柱状图去除右边纵坐标,excel如何把次坐标轴逆序

excel2010设置水平坐标轴逆序类型,但垂直坐标轴刻设置水平坐标轴逆序且垂直坐标轴轴仍位于图表左侧的步骤是&#xff1a;打开带有图表的Excel工作表&#xff1b;在图表区域的水平轴标签位置双击鼠标左键&#xff0c;打开“设置坐标轴格式”&#xff1b;勾寻逆序类别”&#xff…

jhipster项目迁移websocket

2019独角兽企业重金招聘Python工程师标准>>> 1、 在项目目录下命令行安装 两个组件 bower install sockjs-client bower install stomp-websocket 2、在index.html 中加入组件js的引用 <script src"bower_components/sockjs-client/dist/sockjs.js">…

html 图片上放置按钮,用CSS在图片上再加一个小按钮

很简单的&#xff0c;嗯&#xff0c;就是要做成这样的&#xff1a;用CSS&#xff0c;当然得用层了&#xff0c;就是在图片上再加一个层&#xff0c;用来放那个按钮&#xff0c;按钮又有两种方式可以放&#xff0c;一种是直接用图片img标签&#xff0c;一种是通过背景图片放上去…

怎么将oracle的sql文件转换成mysql的sql文件

怎么将sql文件导入PowerDesigner中的方法(将oracle的sql文件转换成mysql的sql文件)呢&#xff1f; 怎么将xx.sql文件的数据库结构导入powerdesigner 的方法呢? 现讲下。 工具/原料 PowerDesigner软件&#xff0c;oracle数据库 方法/步骤 将要导入的库的所有表的表结构(不要表数…

ios html图片相对路径,iOS 下加载本地HTML/js/css/image 等路径问题

今天在项目中遇到一个问题&#xff1a;我将H5的文件拖入项目中&#xff0c;在webView上添加H5,运行时发现H5的样式与图片等都没屏幕快照 2016-07-06 11.33.22.png有了。经过多种测试后发现&#xff1a;是路径的问题。在ios项目下添加本地HTML/js/css/image 当拖入项目时有两种选…

el-calendar 怎么设置上一年和下一年_为什么香港硕士一年的含金量那么高?

为什么香港硕士研究生只读一年但含金量更高&#xff1f;近些年来香港留学大热&#xff0c;其中一个原因就是香港的授课式硕士研究生仅需一年就可以拿到学位。对于学生来说&#xff0c;在享受到国际一流的教学资源和工作机会的同时&#xff0c;既节省时间又节约金钱&#xff0c;…

武汉市江岸区2021年高考成绩查询,2021年武汉各区一、二、三批次高中有哪些(名单)...

5月5日至9日是武汉市中考网上报名填报志愿的日子&#xff0c;填报志愿之前应提前了解本区的一批次、二批次和三批次学校的名单&#xff0c;了解其历年录取分数线&#xff0c;并选中最合适最理想的一所学校进行填写&#xff0c;下面我们来看详细名单。武汉各区一、二、三批次高中…

《Java设计模式》之桥接模式

Bridge模式的概念 Bridge 模式是构造型的设计模式之中的一个。Bridge模式基于类的最小设计原则&#xff0c;通过使用封装&#xff0c;聚合以及继承等行为来让不同的类承担不同的责任。它的主要特点是把抽象&#xff08;abstraction&#xff09;与行为实现&#xff08;implement…

cad中tk什么意思_设计中的“Neobject”什么意思?来了解一下

DesignArchitectureInteriorsFashionArtTransportTHE STUFF THAT REFINES YOU破界造物New Language?“Neobject&#xff0c;言如其字&#xff0c;从语义上&#xff0c;前缀 neo- 表示新的&#xff0c;object 则是物体&#xff0c;是客观存在&#xff0c;很中性&#xff0c;作动…

html文段源码,HTML 段落

HTML 段落HTML 可以将文档分割为若干段落。HTML 段落段落是通过 标签定义的。实例这是一个段落这是另一个段落尝试一下 注意&#xff1a;浏览器会自动地在段落的前后添加空行。( 是块级元素)不要忘记结束标签即使忘了使用结束标签&#xff0c;大多数浏览器也会正确地将 HTML 显…

c#如何实现叫号操作_微信预约排队叫号系统操作指南

“微信排队预约"功能是阿拉善盟税务局为进一步优化营商环境&#xff0c;深化“放管服”改革&#xff0c;提高纳税便利度&#xff0c;更好地服务于阿拉善经济社会发展而开发的一项便民措施。通过“微信排队预约”功能&#xff0c;纳税人可以随时随地通过微信获取办税大厅的…

计算机用户越权操作的原因,“三员系统”中常见的越权问题

原标题&#xff1a;“三员系统”中常见的越权问题一、越权访问越权访问(Broken Access Control&#xff0c;简称BAC)是Web应用程序中一种常见的漏洞&#xff0c;由于其存在范围广、危害大&#xff0c;被OWASP列为Web应用十大安全隐患的第二名。1.1越权访问的产生比如&#xff0…

富士施乐2022网络扫描设置_富士施乐(FUJI XEROX)全系列复印机产品介绍

富士施乐(FUJI XEROX)复印机全系列详解富士施乐复印机是中小型办公环境的理想机型。所有的都拥有高效生产力和强大的稳定性&#xff0c;无论您需要亮丽色彩、黑白打印、亦或是足以应对复杂文档工作流的强大功能&#xff0c;总有一款适合您。DocuCentre S2110NDocuCentre S2110N…

JavaMail(四):接收邮件

2019独角兽企业重金招聘Python工程师标准>>> 接收邮件采用POP3协议进行接收&#xff0c;简单的一个接收邮件案例如下 /*** 接收邮件*/ public static void receive() throws Exception { // 准备连接服务器的会话信息 Properties props new Properties(); props.se…

jqgrid本地数据例子_办公系统私有云公有云和本地化部署,你选哪个?

随着互联网和云计算技术的发展&#xff0c;我们常常会听到&#xff1a;私有云、公有云和本地化部署&#xff0c;它们分别代表什么意思&#xff1f;无论是国企、民企还是外企&#xff0c;只要有数据&#xff0c;就要思考&#xff1a;到底将数据储存在哪里&#xff1f;选择轻流进…

计算机基础应用的培养活动记录,小学少年宫计算机兴趣小组活动记录表

小学少年宫计算机兴趣小组活动记录表 小学少年宫计算机兴趣小组活动记录表 活动名称&#xff1a;计算机 指导教师&#xff1a; ⅩⅩ 学生姓名 活动地点 计算机教室 活 动 过 程 活动1&#xff0e;认识计算机 ①师&#xff1a;“请同学们按下方盒子上面像大钮扣一样的按钮&#…

哪个计算机无法做到双屏显示,怎么启用双屏显示设置【图文介绍】

随着生活质量的提升&#xff0c;人们对于便利的要求越来越高&#xff0c;电脑的双屏显示成为现在用户越来越关注的对象之一。比如炒股操作中&#xff0c;人们既要关注大盘的走动趋势&#xff0c;又要关注特定股票的走势&#xff0c;在普通的屏幕上就需要不断地切换页面&#xf…

1.django 开发环境搭建

2019独角兽企业重金招聘Python工程师标准>>> 本教程使用的开发环境 本教程写作时开发环境的系统平台为 Windows 10 &#xff08;64 位&#xff09;&#xff0c;Python 版本为 3.5.2 &#xff08;64 位&#xff09;&#xff0c;Django 版本为 1.10.6。 建议尽可能地与…

改jpg_|我来改第04期|—人物海报设计

【我来改第04期】人物海报文案内容-Ad copyhttps://pan.baidu.com/s/16pz9_rcLXTGZ3xzKFjKN9g 密码: r57t设计要求-Requirement尺寸&#xff1a;1080(高)*650(宽)像素&#xff0c;大小不大于5m设计要求&#xff1a;以目前的蓝色为主要颜色(R:47,G:87,B:130)&#xff0c;画面体…