c语言怎么从子函数的子函数直接返回主函数
5个回答
展开全部
1 汇编清空子函数分配的存储空间,这个不在C范围内了。也可以无视。
2 汇编跳转到主函数地址 ,汇编级的调试跳转过,代码的话很复杂。不考虑安全、存储空间等问题并且最后退出是直接退出而非按步返回,直接调用主函数即可。
函数跳转是编译器的事,你想按自己的方式跳转就要做相应的本该由编译器做的事 。否则不可以。
2 汇编跳转到主函数地址 ,汇编级的调试跳转过,代码的话很复杂。不考虑安全、存储空间等问题并且最后退出是直接退出而非按步返回,直接调用主函数即可。
函数跳转是编译器的事,你想按自己的方式跳转就要做相应的本该由编译器做的事 。否则不可以。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
c++可以通过异常处理的throw和catch来实现从子函数的子函数直接返回主函数,汇编语言可以用jmp指令跳转实现这个需求。
c语言主要靠函数调用和return在函数之间切换,很难做到在多层调用中直接返回主函数。虽然goto语句可以无条件跳转
c语言主要靠函数调用和return在函数之间切换,很难做到在多层调用中直接返回主函数。虽然goto语句可以无条件跳转
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是要跳出这两个函数还是把值传回去函数继续。
如果跳出两个函数里都return;就行,需要把值传到main里运行main再继续的话,应该把main函数里用到的代码构造成一个函数,然后可以直接传值、构造个全局变量或指针都行。
如果跳出两个函数里都return;就行,需要把值传到main里运行main再继续的话,应该把main函数里用到的代码构造成一个函数,然后可以直接传值、构造个全局变量或指针都行。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
goto可以做这个事情,建议不要用。你可以让子函数执行结束,结束之后自然会回到主函数中
追问
是从子函数的子函数直接回
追答
现在编程方式for,while,if等几乎可以满足所有的编程需求,所以很多人和书都建议不要使用goto。你应该先看看自己的程序设计上是否有问题,return可以结束函数跳回上一级函数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询