c语言怎么得到函数返回值 c语言函数返回值怎么用

c语言中,函数返回值怎么用?return后接一个值 。\r\n在调用这个函数的函数里面,调用它的时候希望获得一个值 , 如果不希望获得这个值的时候,用void声明就好 。如果需要,比如说需要得到一个整形值\r\n就声明\r\nint func()\r\n在调用它的比如main里面\r\nfunc()的作用就可以相当于一个int型常数\r\n比如外面定义了\r\nint max(int a,int b)\r\n{\r\nreturn ab?a:b;\r\n}\r\n主函数里面是\r\nmain()\r\n{\r\nint A;\r\nA=max(1,2);\r\n}\r\n这时候就是通过max计算 12 则return 一个1 ,1
回答于 2022-11-16
C语言中函数返回类型和函数返回值函数的返回值通过return语句来执行,即return后的变量或表达式的值,就为该函数的返回值(c语言怎么得到函数返回值你可以根据需要自定义返回什么值) , 而返回值的类型是指该值c语言怎么得到函数返回值你想要得到的类型,比如return
a;(a的类型,你在函数体里定义的是int
a;但根据需要 , 你要的是一个float型的返回值),于是,这样定义一个函数:
float
函数名(参数列表)
{
int
a;
函数体;
……
return
a;
}
这样,返回值a就变成了float型 。
C语言如何返回值首先说明一下你的程序的问题与缺陷:
1: return语句 只能返回一个值,而不能写成 “return h,l;”
【c语言怎么得到函数返回值 c语言函数返回值怎么用】2:你在main()中定义了h,l,而在调用cal()时,又定义了h,l,这两个h,l是完全不同的两组 。即使你为cal()里的h,l赋值 , 那么返回到main()时 , h,l仍然为0.
3:你在cal()里的scanf写的不好 。两个%d之间最好什么都没有,加了逗号,可能会在读取时,h,l赋值错误 。(具体请看我下面的程序)
下面是我的解法:
先问一下,你用的是TC2.0还是VC6.0?
如果是VC6.0,那么可以使用引用类型:
/*法一:使用引用*/
#includestdio.h
void cal(intch, intcl);/*声明ch,cl为引用类型*/
void main()
{
int h=0,l=0;
cal(h, l);/*这里将h,l传入cal()*/
printf("%d,%d",h,l);
}
void cal(int ch, int cl)
{
scanf("%d%d",ch,cl);/*这里为ch,cl赋值*/
}
TC2.0中好像不支持引用类型 。我没测试 。
-------------------------
如果是TC2.0,那么可以使用指针:
/*法二:使用指针*/
#includestdio.h
void cal(int *ph, int *pl);/*这里将ph,pl声明为指针*/
void main()
{
int h=0,l=0;
cal(h, l);/*将变量h,l地址传过去 。*/
printf("%d,%d",h,l);
}
void cal(int *ph, int *pl)
{
scanf("%d%d",ph,pl);/*为ph,pl赋值*/
}
------------------
以上两种方法都可以解决你说的问题 。
有问题请追问 。
关于c语言怎么得到函数返回值和c语言函数返回值怎么用的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读