c语言中,返回值是什么意思

作者&投稿:佟博 (若有异议请与网页底部的电邮联系)
C语言中返回值是什么意思?有什么用?~

就是子函数的返回值,main主函数也是有返回值的,但是一般用不到,都忽略掉了
所以说,一般来说的返回值就是子函数的返回值
还有一点一定要注意,就是一个子函数一定是只能返回一个值,多了不可以。只能用数组或指针来完成

函数的返回值一般有两种,无论有无返回值,都需要标类型
一个是void型的。这个一般也不用,他是空返回值。也就是当不需要返回值的时候,函数的类型标void。其实这个也是会返回一个值,好像是调用成功返回1,不成功返回0
另一种是非void型的。就是在函数前面写上类型,如int,float,char等,这个就是函数的返回值类型。这个一般在子函数的末尾或者程序的某个部位有个return返回一个。但是遇到return子函数一定是要结束的。
其实还有一种返回值,就是scanf和printf等系统带的函数,这个我知道printf的返回值是他打印的字符的数量。

一个函数的函数名既是该函数的代表,也是一个变量。由于函数名变量通常用来把函数的处理结果数据返回给调用函数,即递归调用,所以一般把函数名变量称为返回值,函数的返回值类型是在定义函数时指定的。
函数可以有返回值,也可以没有返回值。
1、没有返回值的函数:功能只是完成一个操作,应将返回值类型定义为void,函数体内可没有return语句。
2、有返回值的函数:函数的最后会有一个返回值return,可以用来获取该函数执行结果返回给该函数,让外部调用该函数的。
一个函数的函数名既是该函数的代表,也是一个变量。由于函数名变量通常用来把函数的处理结果数据返回给调用函数,即递归调用,所以一般把函数名变量称为返回值,函数的返回值类型是在定义函数时指定的。

扩展资料
C程序中的print函数:
是这样写的:printf("%d
",printf("%d",printf("%d",i)));
一共有三个printf函数,我们可以使用一些代号来简化这个printf函数,如下:
代号A: printf("%d",printf("%d",i));
代号B: printf("%d",i)
则C程序代码可以简化为:printf("%d
",A); 那么我们就先来求A。而A,又可以简化为:printf("%d",B);那么就先来求B。
B是 printf("%d",i),打印出“123”,即在C语言运行结果中,你最先看到的是123。C语言printf函数的返回值是printf实际控制输出的字符数,那么打印的123 就是3个字符,因此printf("%d",i)返回的就是3,也就是B是3。
那么,A就可以写为printf("%d",printf("%d",3));打印出3,即在运行结果中,你紧接着会看到3。
而打印出的3是1个字符,因此A就是1,那么printf("%d
",A); 实际上就是printf("%d
",1); 打印出1。
参考资料来源:百度百科-返回值

返回值是函数的返回值。在于函数定义中的说明

哪个?

在一个函数定义中,函数体之前的所有部分称为函数头,它给出了该函数的返回类型、每个参数的次序和类型等函数原型信息,所以当没有专门给出函数原型说明语句时,系统就从函数头中获取函数原型信息。
一个函数的原型语句就是其函数头的一个拷贝,当然要在最后加上语句接上结束符分号。函数原型语句与函数头也有细微的差别,在函数原型语句中,其参数表中的每个参数允许只保留参数类型,而省略参数名,并且若使用参数名也允许与函数头中对应的参数名不同。
全文如下:
一)、定义格式
<类型名>
<函数名>
([<参数表>])
<函数体>
<类型名>为系统或用户已定义的一种数据类型,它是函数执行过程中通过return语句要求返回的值的类型,又称为该函数的类型。当一个函数不需要通过return语句返回一个值时,称为无返回值函数或无类型函数,此时需要使用保留字void作为类型名。当类型名为int时,可以省略不写,但为了清楚起见,还是写明为好。
<函数名>是用户为函数所起的名字,它是一个标识符,应符合C++标识符的一般命名规则,用户通过使用这个函数名和实参表可以调用该函数。
<参数表>又称形式参数表,它包含有任意多个(含0个,即没有)参数说明项,当多于一个时其前后两个参数说明项之间必须用逗号分开。每个参数说明项由一种已定义的数据类型和一个变量标识符组成,该变量标识符成为该函数的形式参数,简称形参,形参前面给出的数据类型称为该形参的类型。一个函数定义中的<参数表>可以被省略,表明该函数为无参函数,若<参数表>用void取代,则也表明是无参函数,若<参数表>不为空,同时又不是保留字void,则称为带参函数。
<函数体>是一条复合语句,它以左花括号开始,到右花括号结束,中间为一条或若干条C++语句。
在一个函数的参数表中,每个参数可以为任一种数据类型,包括普通类型、指针类型、数组类型、引用类型等,一个函数的返回值可以是除数组类型之外的任何类型,包括普通类型、指针类型和引用类型等。另外,当不需要返回值时,应把函数定义为void类型。
二)、定义格式举例
(1)
void
f1()
(2)
void
f2(int
x)
(3)
int
f3(int
x,int*
p)
(4)
char*
f4(char
a[])
(5)
int
f5(int&
x,double
d)
(6)
int&
f6(int
b[10],
int
n)
(7)
void
f7(float
c[][N],
int
m,
float&
max)
(8)
bool
f8(ElemType*&
bt,
ElemType&
item)
在第一条函数定义中,函数名为f1,函数类型为void,参数表为空,此函数是一个无参无类型函数。若在f1后面的圆括号内写入保留字void,也表示为无参函数。
在第二条函数定义中,仅带有一个类型为int的形参变量x,该函数没有返回值。
在第三条函数定义中,函数名为f3,函数类型为int,函数参数为x和p,其中x为int型普通参数,p为int*型指针参数。
在第四条函数定义中,函数名为f4,函数类型为char*,即字符指针类型,参数表中包含一个一维字符数组参数。注意:在定义任何类型的一维数组参数时,不需要给出维的尺寸,当然给出也是允许的,但没有任何意义。
在第五条函数定义中,函数名为f5,返回类型为int,该函数带有两个形参,一个为
整型引用变量x,另一个为双精度变量d。
在第六条函数定义中,函数名为f6,函数类型为int&,即整型引用,该函数带有两个形参,一个是整型数组b,另一个是整型变量n。在这里定义形参数组b所给出的维的尺寸10可以被省略。
在第七条函数定义中,函数名为f7,无函数类型,参数表中包含三个参数,一个为二维单精度型数组c,第二个为整型变量m,第三个为单精度引用变量max。注意:当定义一个二维数组参数时,第二维的尺寸必须给出,并且必须是一个常量表达式,第一维尺寸可给出也可不给出,其作用相同。
在第八条函数定义中,函数名为f8,返回类型为bool,即逻辑类型,该函数带有两个参数,一个为形参bt,它为ElemType的指针引用类型,另一个为形参item,它是ElemType的引用类型,其中ElemType为一种用户定义的类型或是通过typedef语句定义的一个类型的别名。
三)、有关函数定义的几点说明
1.
函数原型语句
在一个函数定义中,函数体之前的所有部分称为函数头,它给出了该函数的返回类型、每个参数的次序和类型等函数原型信息,所以当没有专门给出函数原型说明语句时,系统就从函数头中获取函数原型信息。
一个函数必须先定义或声明而后才能被调用,否则编译程序无法判断该调用的正确性。一个函数的声明是通过使用一条函数原型语句实现的,当然使用多条相同的原型语句声明同一个函数虽然多余但也是允许的,编译时不会出现错误。
在一个完整的程序中,函数的定义和函数的调用可以在同一个程序文件中,也可以处在不同的程序文件中,但必须确保函数原型语句与函数调用表达式出现在同一个文件中,并且函数原型语句出现在前,函数的调用出现在后。
通常把一个程序中用户定义的所有函数的原型语句组织在一起,构成一个头文件,让该程序中所含的每个程序文件的开始(即所有函数定义之前)包含这个头文件(通过#include命令实现),这样不管每个函数的定义在哪里出现,都能够确保函数先声明后使用(即调用)这一原则的实现。
一个函数的原型语句就是其函数头的一个拷贝,当然要在最后加上语句接上结束符分号。函数原型语句与函数头也有细微的差别,在函数原型语句中,其参数表中的每个参数允许只保留参数类型,而省略参数名,并且若使用参数名也允许与函数头中对应的参数名不同。
2.
常量形参
在定义一个函数时,若只允许函数体访问一个形参的值,不允许修改它的值,则应把该形参说明为常量,这只要在形参说明的前面加上const保留字进行修饰即可。如:
void
f9(const
int&
x,
const
char&
y);
void
f10(const
char*
p,
char
key);
在函数f9的函数体中只允许使用x和y的值,不允许修改它们的值。在函数f10的函数体中只允许使用p所指向的字符对象或字符数组对象的值,不允许修改它们的值,但在函数体中既允许使用也允许修改形参key的值。
3.
缺省参数
在一个函数定义中,可根据需要对参数表末尾的一个或连续若干个参数给出缺省值,当调用这个函数时,若实参表中没有给出对应的实参,则形参将采用这个缺省值。如:
void
f11(int
x,
int
y=0)
int
f12(int
a[],
char
op='+',
int
k=10)
函数f11的定义带有两个参数,分别为整型变量x和y,并且y带有缺省值0,若调用该函数的表达式为f11(a,b),将把a的值赋给x,把b的值赋给y,接着执行函数体;若调用该函数的表达式为f11(a+b),则也是正确的调用格式,它将把a+b的值赋给x,因y没有对应的实参,将采用缺省值0,参数传送后接着执行函数体。
函数f12的定义带有三个参数,其中后两个带有缺省值,所以调用它的函数格式有三种,一种只带一个实参,用于向形参a传送数据,后两个形参采用缺省值,第二种带有两个实参,用于分别向形参a和op传送数据,第三个形参采用缺省值,第三种带有三个实参,分别用于传送给三个形参。
若一个函数带有专门的函数原型语句,则形参的缺省值只能在该函数原型语句中给出,不允许在函数头中给出。如对于上述的f11和f12函数,其对应的函数原型语句分别为:
void
f11(int
x,
int
y=0);
int
f12(int
a[],
char
op='+',
int
k=10);
函数定义应分别改写为:
void
f11(int
x,
int
y)
int
f12(int
a[],
char
op,
int
k)
4.
数组参数
在函数定义中的每个数组参数实际上是指向元素类型的指针参数。对于一维数组参数说明:
<数据类型>
<数组名>[]
它与下面的指针参数说明完全等价:
<数据类型>
*<指针变量名>
其中<指针变量名>就是数组参数说明中的<数组名>。如对于f12函数定义中的数组参数说明int
a[],等价于指针参数说明int*
a。也就是说,数组参数说明中的数组名a是一个类型为int*的形参。注意:在变量定义语句中定义的数组,其数组名代表的是一个数组,它的值是指向第一个元素的指针常量,这与数组形参的含义有区别。
对于二维数组参数说明:
<数据类型>
<参数名>[][<第二维尺寸>]
它与下面的指针参数说明完全等价:
<数据类型>
(*<参数名>)[<第二维尺寸>]
如对于f7函数定义中的二维数组参数说明float
c[][N],等价于指针参数说明float(*c)[N]。
5.
函数类型
当调用一个函数时就执行一遍循环体,对于类型为非void的函数,函数体中至少必须带有一条return语句,并且每条return语句必须带有一个表达式,当执行到任一条return语句时,将计算出它的表达式的值,结束整个函数的调用过程,把这个值作为所求的函数值带回到调用位置,参与相应的运算;对于类型为void的函数,它不需要返回任何函数值,所以在函数体中既可以使用return语句,也可以不使用,对于使用的每条return语句不允许也不需要带有表达式,当执行到任一条return语句时,或执行到函数体最后结束位置时,将结束函数的调用过程,返回到调用位置向下继续执行。
6.
内联函数
当在一个函数的定义或声明前加上关键字inline则就把该函数声明为内联函数。计算机在执行一般函数的调用时,无论该函数多么简单或复杂,都要经过参数传递、执行函数体和返回等操作。若把一个函数声明为内联函数后,在程序编译阶段系统就有可能把所有调用该函数的地方都直接替换为该函数的执行代码,由此省去函数调用时的参数传递和返回操作,从而加快整个程序的执行速度。通常可把一些相对简单的函数声明为内联函数,对于较复杂的函数则不应声明为内联函数。从用户的角度看,调用内联函数和一般函数没有任何区别。下面就是一个内联函数定义的例子,它返回形参值的立方。
inline
int
cube(int
n)
{
return
n*n*n;
}
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
Vae团队招人!!!欢迎各位加入!!!走过路过不要错过!!!迅猛发展中!!!

c语言中,有许多情况下需要重复某些语句的计算,就可以把这些语句单独提出来形成子程序,遇到重复的地方调用就可以了;但是有些情况下需要得到子程序运行的一个结果时,就可以通过将子程序设计成带返回值的函数,比如标准的sin函数,它的返回值就是一个double型数据。
举例:
不带返回值的子程序void fun(int a,int b) { .... return; }
带返回值的函数int fun(int a,int b) { return a+b; }
当我要显示两个变量或数据的和时,可以:int a=45,b=1; printf("%d\n",fun(a,b));这个就是利用函数的返回值进行输出的。
用void表明这个函数没有可用的返回值,你的程序中如果有return语句的话也不许带参数,或者省略return语句
如果声明函数有返回值,那么你的return语句必须带参数,这个参数就是返回值
以上选择根据具体要求来定是否函数带返回值,编程者自己决定的。


请问C语言中的返回值是什么意思,为什么要有返回值,解释一下,越通俗易...
就是你要一个函数或一段代码完成某一项功能,比如是一个计算任务,这个计算任务需要有一个结果,这个结果可以通过函数的返回值来得到。当然有的的函数不需要结果,就完成一个功能,比如播放一段音乐。但这个函数也会有一个返回值,这个返回值可能是播放是否成功,或是播放否结束等等。

c语言里, 返回值有什么作用,返回到哪里,为什么要有返回值
通常返回的是0,-1,1对应不同的情况,返回到对应函数分配的内存中,如果你不搞成一个等式的话,运行完就自动删除掉了,int max(){return a};如果你写成a=max();那返回值就知道是多少了,而且放在为这个函数临时分配的内存中,程序运行完就木有了,这个是函数那块的内容,也叫做程序的生命周期 ...

“编程”里的返回值是什么意思?
返回值 就是通过程序计算之后的到结果,也是函数实现返回最终的结果函数(方法)一般分为有返回值和无返回值,无返回值实现功能最终不返回结果,有返回值的,最终返回该函数的计算结果。

c语言返回值什么意思?
子函数的返回值,main主函数也是有返回值的,但是一般用不到都忽略掉了,一般来说的返回值就是子函数的返回值。当需要一个函数去处理数据时,如求平方,这时候求平方后的值可以有两种方法表达 1、以值的形式返回给你,即return x,这样就可以利用这个结果了,此时函数名前当然要加返回的数据类型了 2...

C#语言中的返回值是什么意思,求教
方法没有返回值则定义为 void,如下:public string hw(){ string hw;hw = "XXXXXXXXXXXX";return hw;} 以上是返回字符串变量,返回的是 XXXXXXXXXXXX 。public void hw(){ string hw;hw = "XXXXXXXXXXX";} 以上是没有返回值的方法,只是将 XXXXXXXXXXXX 赋到变量 hw 中。

C语言中返回值是什么意思啊
返回值是C语言中一个重要的概念,指的是函数执行完以后return的结果。在一般的C教材中,都有比较详细的介绍。返回值的形式跟函数的类型有关,返回值可能是一个数据,一个指针,一个字符串等等。在调用这个函数的地方,可以根据返回值判断函数的执行是否正确或获取想要的信息。举个例子来说吧,int add(...

c语言中的RETURN()返回值是什么意思?求举例
返回值的类型由return后面的参数确定;Return语句可以用来返变量或指针中的值,也可以用来返回0,表示返回为空,返回一个代数值,通常在子函数zd的末尾。return 表示把程序流程从被调函数转向主调函数并把表达式的值带回主调函数,实现函数值的返回,返回时可附带一个返回值,由return后面的参数指定。

c语言的返回值是什么意思啊?
函数返回值的意思是将函数实现的结果返回给调用者。按标准来说,C的main函数是需要有返回值的。标准中main函数返回类型是int的,所以需要一个返回值。但是由于历史原因,很多地方可以看到没有返回值的main。比如直接main()或者说void main() 但是这样一般编译器也不会认为错误,不过建议还是写标准的C的...

C语言中的“return 0”是什么意思?
c语言中return 0的含义:1、返回值int 类型的函数返回:return语句用来结束循环,或返回一个函数的值。return 0:一般用在主函数结束时,按照程序开发的一般惯例,表示成功完成本函数。2、布尔类型返回:return 0:返回假。return 1:返回真。C语言简介:C语言是一门面向过程的计算机编程语言,与C++、C#...

C语言中返回值与最终输出的值的区别
返回值是某个函数的结果,最终输出的值是主函数的返回值 从一定意义上说,最终输出的值是返回值的特殊情况

安图县13131835214: c语言返回值具体是指什么? -
空壮欣坤: 子函数的返回值,main主函数也是有返回值的,但是一般用不到都忽略掉了,一般来说的返回值就是子函数的返回值.当需要一个函数去处理数据时,如求平方,这时候求平方后的值可以有两种方法表达 1、以值的形式返回给你,即return x,...

安图县13131835214: C语言中什么是函数的返回值? -
空壮欣坤: 一个方法,可以有返回值,也可以没有!首先方法有参数,方法就像一个箱子,里面有机关.然后参数就是需要通过机关处理的东西,然后被机关处理完之后·最后从出口出来一个新的东西.那个就是返回的值.!你传进一个值~然后通过你写...

安图县13131835214: C语言中返回值为空和返回值为零分别是什么意思? -
空壮欣坤: 在C语言中,返回值是没有强调说一定要有,但做为编程规范就要求一定要写.返回值为空,就没有返回值,也就没有return语句.那么格式如下:void main(){......}返回值是0,即有返回值,就有return语句.格式如下:int main(){{... return 0;//0表示正常,非0表示出错} 在这里的返回值看上去我们好像是用不到,但是系统在执行完程序后会对返回值加以判断,结果是对还是错,还是有异常等,就可以反馈回来加以修改程序.

安图县13131835214: C语言中函数返回值有什么用 -
空壮欣坤: 返回值一般用来表示函数是否正常成功运行, 或者返回函数运行后的结果

安图县13131835214: C语言返回值是什么概念? -
空壮欣坤: C语言的函数包含 函数名,参数,返回值三部分.其中只有函数名是必须的,其他两项可以省略.以main函数为例: main() {} ,只有函数名 int main(){return 0} ,函数名和返回值 void main(){} ,函数名和返回值 int main(argc[],argv[]){return...

安图县13131835214: c语言函数的返回值是什么意思? -
空壮欣坤: 所谓函数返回值是一个函数在运算结束以后向调用它的母函数或者系统反馈一个值,这个值可以是各种变量类型. 举个简单的例子: int add(int a,int b) { return (a+b); } int main() { int res; res=add(3,4); printf("%d",res); return 0; } 在主函数main中调用子函数add,并传递参数3和4过去,add经过运算后得到值7,通过return语句将得到的值返回给调用它的main函数供其使用,而在main中,返回值被用于给res赋值. 函数返回值就可以理解为解决一个问题以后得到的结论,把这个结论交给别人,就像写在书上成为一个定理,来让别人使用.

安图县13131835214: c语言中的RETURN()返回值是什么意思? -
空壮欣坤: 调用包含该return()的函数时,返回括号里面的值. 如: int Add(int a,int b) {int c;c=a+b;return c; } ... int x; x=Add(2,3);//x就等于5了; ... 函数相当于人的行为,有的需要一个结果,有的不需要.比如:A叫B去拿本书,返回结果就是所要的那本书了,但如果A叫B去打C一巴掌,那B去做就行了,不需要返回结果给A.

安图县13131835214: C语言中返回值 -
空壮欣坤: 首先,C语言中的函数有两种形式:1)有返回值,2)无返回值.有返回值的函数会把执行的结果(也就是你写这个函数的目的)返回到主函数中.没有返回值的函数主要是为了完成某种任务(其实这是废话,函数的功能就是为了完成某种任务...

安图县13131835214: C语言中什么叫返回值啊? -
空壮欣坤: int main(void) 你的这个函数返回的是一个int 值 传的参数是void也就是不需要传参数 首先和你解释什么叫返回值吧.给你举一个例 int Add(int a,int b) {int count=a+b;return count; } 也就是你传两个参数分别是a和b 这个Add 的方法用来计算a+b的赋值给count 然后返回count 这样就是你可以用这个方法得到两个数相加的和 你所发的那个return 0没有任何意义 也就是你执行完那些踩踩踩 后 因为你的方法必须返回一个int值出去而以.你用这样的例子学习return 的意思只会让你更迷茫

安图县13131835214: c语言中,返回函数值到底是什么意思啊?有什么用? -
空壮欣坤: 可以这样理解,函数就是你让电脑做的事,返回函数值就是电脑做完事情,告诉你结果.比如你让电脑计算1+1,计算机算出来2,就把2告诉你,2就是返回函数值

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