你可以这么理解,比如我们定义了一个函数fun(),如果这个函数有返回值,那么在调用程序里面(比如主函数)就可以把这个函数当成一个数使用;如果没有返回值,那么通常他就是一个独立的语句存在。
成都创新互联公司是专业的进贤网站建设公司,进贤接单;提供成都做网站、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行进贤网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
比如fun函数里面有个return 0;表示返回值是零,那么在调用函数里面就可以存在诸如
a=fun();b=a+fun();if(fun()=0{};……这类的语句,表示a=0;b=a+0;if(00){};等等,当然也可能是返回一个变量的值,你个指针的值是一样的。
如果没有return 语句,那么函数没有返回值,调用函数里面就不能把他当做一个数值来使用,会出现:
fun();单独成句的语句,在fun()里面可能进行了一些操作,但不需要结果。
C语言自带的函数通常都有返回值,计算函数返回计算结果,操作函数返回操作结果(成功返回1,失败返回0)
当一个函数不是void型的时候就必须有一个返回值(main)函数除外,这个返回值就看你这个函数本身是什么型的。返回值经常用来标志一些东西,比如一个游戏程序中的函数int
win()用来判断输赢,输返回0,赢返回1,然后主调函数可以根据它的返回值做相应的处理,比如这样的句子
if(win())
speed++;(进入下一关)。
函数的返回值通过return语句来执行,即return后的变量或表达式的值,就为该函数的返回值(你可以根据需要自定义返回什么值),而返回值的类型是指该值你想要得到的类型,比如return
a;(a的类型,你在函数体里定义的是int
a;但根据需要,你要的是一个float型的返回值),于是,这样定义一个函数:
float
函数名(参数列表)
{
int
a;
函数体;
……
return
a;
}
这样,返回值a就变成了float型。
简单的说,函数就是一个算法,有不有返回值是跟这个函数做什么的有关系。
一般情况下,求和这类的就要返回值,比如
int
add(int
a,int
b)
{
return
a+b;//这就返回a+b的和,用函数的时候,你只要传a,b的值就得了
}
用的时候这样:
int
s=add(100,200);
//就把100+200也就是300的值赋给s了
这种情况就是相当于你去A地做买东西,你肯定得拿东西回来。你拿回来的东西也就是返回值
-------------------------------------------
还有些不用返回值的,比如,输出,或者给有地址的变量赋值等
这些函数前面就可以用void
表示无返回值,当然你也可以返回你想返回的。比如说成功或者失败返回true
or
false.也可以随意返回一个int型的
1或者0
比如:
void
pri(int
i)
{
printf("%d",i);//这个就是打印一个整型的i出来
}
这种就像你去A地不干什么,就去那儿吼两句,也就不用拿什么回来了。
还有种给有地址的变量赋值。那就相当于你去a地寄了一封信,也不用什么什么回来。
啊,打得手累,我就这样理解了。给是清楚点了,呵呵