C++怎样执行完子函数之后返回主函数某一步继续进行?
展开全部
1、执行完子函数之后回到调用该成员函数处的下一执行点。如果是主函数中调用类的成员函数,那么回到调用该成员函数的下一执行点。
2、C语言调用函数就是先定义并声明函数,之后再根据定义函数的格式调用。
下面举例来说明函数调用方法:
#include<stdio.h>
int fun(int x, int y); // 函数声明,如果函数写在被调用处之前,可以不用声明
void main()
{
int a=1, b=2, c;
c = fun(a, b); // 函数的调用,调用自定义函数fun,其中a,b为实际参数,传递给被调用函数的输入值
}
// 自定义函数fun
int fun(int x, int y) // 函数首部
{ // {}中的语言为函数体
return x>y ? x : y; // 返回x和y中较大的一个数
}
展开全部
函数执行后,返回上级函数体。然后你可以在主函数第一步设置标签,在子函数下一步使用goto转跳到标签处。
最好分析一下你程序结构,可以使用循环代替goto。
最好分析一下你程序结构,可以使用循环代替goto。
追问
我的菜单有四层的样子,每层都用循环是不是会特别麻烦?
追答
这种情况下,用循环不是好方法。我建议采用树结构分层存储菜单,然后定义一个指针访问菜单,设置回溯指针回主函数。你可以参考一下数据结构上的教程。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你理解程序的运行机制吗?当运行字程序时,系统会对主程序进行压桟保护,存储调用子程序前的程序地址和局部变量的数据,子程序运行结束时,系统执行出栈操作,返回主程序之前执行的地方
更多追问追答
追问
恩,这个我知道。现在的问题就是在子函数子菜单中我设置了一个返回上一级的选项,但是点了这个选项之后,会直接返回主菜单向下运行。但我希望的是返回上一级菜单并再运行一遍上一级菜单
追答
你问的是Vc中的菜单设置,可以使用标签,或者设置多个对话框之间的通信来实现调用上一级
我用过MFC,其它的还不熟悉
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以设置标签,loop: 然后 goto loop,具体可以参考goto语法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询