c语言的返回值是啥意思啊?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言的返回值是啥意思啊?相关的知识,希望对你有一定的参考价值。
例如下题 求三个整型参数的最大值函数
int max3(int x1,int x2,int x3)
int max;
if (x1>x2) max=x1
else max=x2
if(max<x3)max=x3
return(max);
前面的我都能看懂,可是到了最后,那个返回是什么意思啊,此时max已经是最大值了啊,再返回max是什么意思呢?还有就是,return和printf一样会在屏幕显示吗?求高手指点!
函数返回值的意思是将函数实现的结果返回给调用者。
按标准来说,C的main函数是需要有返回值的。标准中main函数返回类型是int的,所以需要一个返回值。但是由于历史原因,很多地方可以看到没有返回值的main。
比如直接main()或者说void main() 但是这样一般编译器也不会认为错误,不过建议还是写标准的C的main函数,最好有一个返回值,0表示正常退出。
扩展资料:
需要说明的是:
1、一个C语言源程序可以由一个或多个源文件组成。
2、每个源文件可由一个或多个函数组成。
3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。
4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源文件或源程序的最前面。
5、每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“”之后不能加分号。(结构体、联合体、枚举型的声明的“”后要加“ ;”。)
6、标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。
参考资料来源:百度百科-函数
参考技术A返回值 就是通过程序计算之后的到结果,也是函数实现返回最终的结果
函数(方法)一般分为有返回值和无返回值,无返回值实现功能最终不返回结果,有返回值的,最终返回该函数的计算结果。
扩展资料
js里面的返回值有三种意思:
第一种情况,也是用得最多的情况,返回值是用于获取函数执行完毕后,获取到我们需要得到的结果;
第二种情况,就是返回空值,用来中止程序的;
第三种情况,用于防止事件冒泡,这种情况多在IE下生效。
返回值就是子函数返回给调用它的上一级函数的一个数值,就是return语句后的值。
比如一个子函数int func()在主函数调用,a=func();
在func()中有一个return b;
则func()返回的值就是这时候变量b的值,并且赋值给主函数中的变量a。
c语言中,有许多情况下需要重复某些语句的计算,就可以把这些语句单独提出来形成子程序,遇到重复的地方调用就可以了;但是有些情况下需要得到子程序运行的一个结果时,就可以通过将子程序设计成带返回值的函数,比如标准的sin函数,它的返回值就是一个double型数据。
在c语言的编程中大部分的函数调用信息是靠返回值来获得的,而这就需要用很多的定义,比如返回-1表示什么意思,-2表示什么意思,-3表示什么意思等等。
而c++中加入了异常的处理,这也算是一种获取信息的方式,但毕竟不是那么友好,大多数情况下,如果返回错误,我们对返回值不是很感兴趣,而是对返回的信息描述感兴趣。只要能简单描述错误的信息就可以了。
如此我们可以用这样一种方式来处理。返回值如果是类类型的如果正确就返回正确值,如果错误就返回null,而在参数中加一个ref string的参数,用来返回错误的描述信息。
如果返回值正确,这个参数就为null。这样一来我们就不用再定义一大堆的返回值信息(而且这此返回值信息还不通用,只能在一个函数中使用)了。而且我们可能只定义一些字符串常量,用来描述各种错误信息即可。
参考资料来源 :百度百科-返回值
参考技术B函数返回值的意思是将函数实现的结果返回给调用者。如:
int max3(int x1,int x2,int x3) ; 最前面的int是指max3()函数的返回值类型,该函数对三个整数进行比较,返回其中最大的一个数的值。之所以定义成int类型,是因为返回的值是这三个整数中的一个,它们的类型是int。
int max;
if (x1>x2)
max=x1;
else
max=x2;
//以上,得到x1 x2中的最大值,存到max中
if(max<x3) //如果此时的max小于第三个数,则最大值应该是x3,否则max就是最大值
max=x3;
return max; //将max返回给调用者,这样,调用者才能得到这个最大值
void main()
int m=max3( 1,3,5 ); //得到max值,存储到m中
printf("max=%d\\n", m ); //输出max值m
如果函数执行完后,不需要有返回结果,则函数要定义成没有返回值,如:
void max2( int x1, int x2 ) //void表示没有返回值 该函数对两个数进行比较,输出其中大的数。if ( x1 > x2 )
printf("max=%d\\n", x1 );
else
printf("max=%d\\n", x2 );
void main()
max2( 3, 5 );
参考技术C 因为此函数调用是“单向”值传递,也就是实参的值传给形参,形参不会传给实参,max是在此函数当中定义的局部变量,只能在此函数当中使用,得到的最大值,如果不用return返回到调用函数当中,在调用函数当中是得不到此值的。return只有两个功能:1、返回一个值到主调函数中;2、结束此函数。并没有输出功能,不会在屏幕上显示。 参考技术D 在c中任何函数都有返回值,这个是定下的,主函数也有返回值
返回值分几个方面,逐个说一下
主函数的返回值,这个一般用户用不到,程序执行的时候,系统会根据这个返回值来判断程序的运行结果
不管定义神马类型的返回值,在tc中默认为void型(这个可以省略),可以根据需要自己定义都可以。
vc中好像必须写,要不然编译系统提示出错
子函数的返回值,分两类
void,也就是在不需要子函数返回数值的时候用到。注意的是不需要不代表没有返回值。调用成功返回1,不成功返回0,我好像在哪里看到过这个说法,我不确定
非void型,这个返回值类型根据定义来返回
值得注意的是,在子函数中,只要执行return一定结束子函数,不管后面有多少代码
一些系统自带的函数,如printf,scanf等,最好了解他的返回值
以上是关于c语言的返回值是啥意思啊?的主要内容,如果未能解决你的问题,请参考以下文章
C语言问题 赋值表达式返回值是啥?比如j=0这个表达式的返回值是啥?