快上网专注成都网站设计 成都网站制作 成都网站建设
成都网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

怎么求c语言中函数返回值 c语言 函数返回

C语言如何返回值

首先说明一下你的程序的问题与缺陷:

目前成都创新互联已为上千余家的企业提供了网站建设、域名、虚拟空间、绵阳服务器托管、企业网站设计、黄石网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

1: return语句 只能返回一个值,而不能写成 “return h,l;”

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语言-函数返回值return

①为什么需要return?

为了回答这个问题,

我打算用 模块思维 来解释。

②定义模块(形参模块)

定义函数:f(s)(a,b)

满足公式:s=a+b

函数名:f(s)

形参: a,b(公式中的 变量 )

函数返回值:return s

③调用模块(实参模块)

主函数:main()表示用户自己编写的部分

调用函数:f(s)(1,2)

满足公式:x=f(s)(1,2)

函数名:f(s)和定义函数一致,产生调用

实参 :1,2( 赋值 给公式的值)

求值:printf("%d\n",x),求x的值?

④值的传递过程

调用模块 中调用函数x=f(s)(1,2)

将实参1和2的值赋值给

定义模块 中的形参a和b

(实参到形参是单向传递,不可逆)

定义模块计算出s=a+b=1+2=3

定义模块 中的return s

将s的值赋值给

调用模块 中的函数f(s)(1,2)

即x=f(s)(1,2)=s=3

~

return s的作用

就是将定义模块中的s

赋值 给调用模块中的调用函数

如果没有return s

调用模块中的调用函数将永远没有定值

即所求x 无定值

这一点和数学不一样,

数学中

同一函数名的值是 通用 的,

C语言中

定义函数和调用函数的值是 隔离 的,

尽管函数名一样

如果不赋值,调用函数永远无定值。

c语言的函数返回值?

你可以这么理解,比如我们定义了一个函数fun(),如果这个函数有返回值,那么在调用程序里面(比如主函数)就可以把这个函数当成一个数使用;如果没有返回值,那么通常他就是一个独立的语句存在。

比如fun函数里面有个return 0;表示返回值是零,那么在调用函数里面就可以存在诸如

a=fun();b=a+fun();if(fun()=0{};……这类的语句,表示a=0;b=a+0;if(00){};等等,当然也可能是返回一个变量的值,你个指针的值是一样的。

如果没有return 语句,那么函数没有返回值,调用函数里面就不能把他当做一个数值来使用,会出现:

fun();单独成句的语句,在fun()里面可能进行了一些操作,但不需要结果。

C语言自带的函数通常都有返回值,计算函数返回计算结果,操作函数返回操作结果(成功返回1,失败返回0)


网页标题:怎么求c语言中函数返回值 c语言 函数返回
当前链接:http://6mz.cn/article/doidcjd.html

其他资讯