免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 1967 | 回复: 13
打印 上一主题 下一主题

[函数] 一个关于函数返回的问题,有兴趣的请进. [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-03-28 00:43 |只看该作者 |倒序浏览
如下三个函数:我想得到的结果是,不管在哪里调用fun_return()都能直接返回到main().
以上假设的执行结果是:
fun_return
main
[结束].
例:
void main()
{
   fun_a();
   printf("main";
}

void fun_a()
{
   fun_return();
   printf("fun_a";
}

void fun_return()
{
   printf("fun_return";
}

论坛徽章:
0
2 [报告]
发表于 2003-03-28 08:35 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

不可能吧!printf("fun_a"; 还是要执行的呀!

论坛徽章:
0
3 [报告]
发表于 2003-03-28 09:03 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

不允许越级返回,否则堆栈就乱套了

论坛徽章:
0
4 [报告]
发表于 2003-03-28 09:05 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

要是来硬的还是可以的:goto

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
5 [报告]
发表于 2003-03-28 11:50 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

setjump 可以。

论坛徽章:
0
6 [报告]
发表于 2003-03-28 13:10 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

如果是C++的话
可以使用异常方式返回

一般不推荐越级返回

因为会引起堆栈的问题

如果真想用
那么看看setjump和longjump用法

论坛徽章:
0
7 [报告]
发表于 2003-03-28 14:08 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

先谢谢各位了!
      还有一个问题:不知道各位有没有用过tuxedo中间件,有一个系统调用tpreturn()功能,能不能猜想其实现的原理.

论坛徽章:
0
8 [报告]
发表于 2003-03-28 14:45 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

到“软件技术”版问问
那里的版主“一无所有”对中间件很精通

论坛徽章:
0
9 [报告]
发表于 2003-03-28 15:14 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

那边好象很少有人去!

论坛徽章:
0
10 [报告]
发表于 2003-03-28 15:15 |只看该作者

一个关于函数返回的问题,有兴趣的请进.

那边好象很少有人去!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP