void a()
{
……
}
void b()
{
a();
}
void c()
{
a();
}
如果想从a返回到调用它的函数(不知道是b还是c),怎样才能做到
C语言中怎样从被调函数中返回到调用函数
答案:6 悬赏:50 手机版
解决时间 2021-01-27 00:36
- 提问者网友:凉末
- 2021-01-26 11:27
最佳答案
- 五星知识达人网友:掌灯师
- 2021-01-26 11:40
1、return后接一个值,就可以实现返回。在调用这个函数的函数里面,调用它的时候希望获得一个值,如果不希望获得这个值的时候,用void声明就好。
2、例如:
int func()
在调用它的比如main里面
func()的作用就可以相当于一个int型常数
比如外面定义了
int max(int a,int b)
{
return a>b?a:b;
}
主函数里面是
main()
{
int A;
A=max(1,2);
}
这时候就是通过max计算 1>2 则return 一个1 ,1<2 则return一个2。很明显1<2 所以这里max(1,2)就会return 一个 2
这时候主函数里的max(1,2)就相当于一个常数 2
A=max(1,2)的作用就相当于A=2
这个意思。
2、例如:
int func()
在调用它的比如main里面
func()的作用就可以相当于一个int型常数
比如外面定义了
int max(int a,int b)
{
return a>b?a:b;
}
主函数里面是
main()
{
int A;
A=max(1,2);
}
这时候就是通过max计算 1>2 则return 一个1 ,1<2 则return一个2。很明显1<2 所以这里max(1,2)就会return 一个 2
这时候主函数里的max(1,2)就相当于一个常数 2
A=max(1,2)的作用就相当于A=2
这个意思。
全部回答
- 1楼网友:人類模型
- 2021-01-26 15:59
在外面的函数中,函数与函数之间是没关系的。只有在mainm函数中才能进行调用
- 2楼网友:孤独的牧羊人
- 2021-01-26 14:51
返回值为 void 的函数返回有两种方式 : 1. return 2. 执行完函数块(到达下一个大括号)
。。。 其他类型的函数返回有一种 : return + 与返回类型相对应的常量或变量。
程序按顺序执行不可能同时被 a b 调用。
- 3楼网友:怙棘
- 2021-01-26 14:31
看看下面这个也许有帮助
#include
void a();
void b();
void c();
void main(void)
{
printf("*********调用a函数*********\n");
a();
printf("*********调用b函数*********\n");
b();
printf("*********调用c函数*********\n");
c();
}
void a()
{
printf("现在执行的是a 函数\n");
printf("a函数执行完成\n");
}
void b()
{
printf("现在执行的是b 函数\n");
printf("我要在b函数中执行一次c\n");
c();
printf("执行完c他会返回b\n");
printf("B函数执行完成\n");
}
void c()
{
printf("现在执行的是c 函数\n");
printf("我又在C函数中执行一次a\n");
a();
printf("执行完a他返回了c\n");
printf("C函数执行完成\n");
}
如果半路想返回只能用return,但是没有返回值不能确定是从哪一步返回的,
如果定义的是int a(),可以返回一个整型数值,用来检查是从哪一步返回的,
不过看你的意思不是想返回什么,面是想调用才是,当我使用a函数的时候,他只能返回他的父函数,不可能跨越自已的父函数返回的,也许是我见识太浅了,这个真没听说过
- 4楼网友:洎扰庸人
- 2021-01-26 13:25
void a()
{
……
switch(a)
{
case 1:
{
printf("返回上一步");
?//怎样回去 //这里加一个return
}
case 2:
{
………………
}
default:
{
printf("输入错误,重新输入");
a();
}
}
}
C基生物写的那个函数可以借用一下,能知道执行的是哪个函数。
- 5楼网友:由着我着迷
- 2021-01-26 11:48
a返回到调用它的函数,既然a都返回了,那就是a结束了啊,a结束了,自然就返回到你调用a的那个位置了。
还是说你想在a中调用b或者调用c?劝你不要这样做,很容易造成死循环。
要结束这个switch,就用break;
要结束这个函数,就用 return;
要结束这个程序,就用exit(0);
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯