c语言问题,高手进

一个函数中能不能有两个return语句?

可以啊,比如
#include <stdio.h>
void main()
{
int max(int x,int y);
int a,b,c;
scanf("%d%d",&a,&b);
c=max(a,b);
printf("%d\n",c);

}
int max(int x,int Y)
{

if(x<Y)
return Y;
else
return x;
}
函数的返回值通过return语句获得。函数只能有唯一的返回值。
一个函数中可以有一个以上的return语句,执行到哪一个return语句,哪一个语句起作用。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-08-08
好像所以的语言中,一个函数只有一个返回值
第2个回答  2010-08-08
可以的 ,在windows编程中 如果一个函数的返回值是BOOL类型的话就可以的

BOOL IsInt(int a)
{
if(a>0)
return FALSE;
else
return TRUE;

}

恩 林声飘扬的回答更好一些。
第3个回答  2010-08-08
不能~如果你要返回两个值就只能用带多个输出参数的函数例如:函数
void
order(int a,int *b,int *c){
。。。。
}前面的a是输入参数后面的*b和*c可以作为输入和输出参数;你调用他的时候order(a,&b,&c)这样他会返回给调用他的函数两个值就是b和c
第4个回答  2010-08-08
能,但只能返回一个值,哪个return执行到用哪个值!
第5个回答  2010-08-08
函数返回的值只能有一个,但里面的return语句可以有无限个!
至于到底哪个return生效,取决于函数内执行的顺序
你甚至可以定义这样一个函数:
int MyFunc()
{
return 1;
return 2;
return 3;
return 4;
return 5;
return 6;
}
当然,只有return 1;生效了,因为按照代码顺序,它先被执行

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网