与C语言函数的邂逅

【摘要】 **
Function
**
C语言中经常会提及到就是函数,有一大堆的库函数,以及程序员自己所编写的函数。 这里推荐一个网站 www.cplusplus.com,这个网站可以用来学习C语言中所涉及到不同类型的函数。全英文文档,正好可以锻炼你们的英文。。。。。。
函数需要什么?怎么定义的?怎么用? 一般函数是由 如下三大要素构成:
1. 函数的返回类型 2. 函…

**

Function

**

C语言中经常会提及到就是函数,有一大堆的库函数,以及程序员自己所编写的函数。
这里推荐一个网站 www.cplusplus.com,这个网站可以用来学习C语言中所涉及到不同类型的函数。全英文文档,正好可以锻炼你们的英文。。。。。。

函数需要什么?怎么定义的?怎么用?
一般函数是由 如下三大要素构成:

1. 函数的返回类型
2. 函数名字
3. 函数的参数

其格式为:
函数的返回类型 函数名字 (函数的参数)

函数的返回类型具体看函数所实现的功能有关,需要返回的是什么类型,常用的是整形(int),不返回(void)等。
函数的参数也叫形参,只在调用时实例化,结束自动销毁。

函数一般是在主函数前定义或者声名好。

调用函数的格式为:
函数名字 (参数)

这里的参数就是实参,可以是变量、常量、表达式、函数等。真实传给函数的参数。

下面给出我认为特别好的例子:
例子当中实现的功能是想把a ,b两个值进行交换,用函数实现。
说明例子之前先提一下两个术语:
顾名思义,知其字意即可,下面的例子很好说明它们的区别。

1. 传值调用
2. 传址调用

eg 1
eg 1当中所用的就是***传值调用***,就是调用函数时,实参中的a,b两个的值传给了形参中的x,y。可以发现,a,b,x,y,都是需要用到地址来存储数值而且地址各不相同,如果实现函数中的功能的话,将x,b两个值进行交换,然而a,b值却仍然和以前的值一样,没有实现交换。
这是为什么呢?
这是因为a,b两个地址储存的值没有发生变化,哪来的交换呢。

所以就引出下面这个例子当中使用的***传址调用***。
大家请看:
eg 2
eg 2当中所用的就是***传址调用***,就是调用函数时,实参中的a,b两个的值的地址传给了形参中的指针类型的pa,pb。
将a,b,两个的地址传到形参中,其中 *pa和 * pb指针变量分别指向a,b的地址,函数功能实现利用了 解引用地址操作符 来实现地址a和地址b的值进行交换。

大家可以通过图的指示进行理解!!!

文章来源: blog.csdn.net,作者:FPGA学习,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/gw123456780/article/details/116074908

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享