「函数?」
我和小弦子两脸懵逼,对这个从来没有听说过的词汇充满了疑问。
「也别想太复杂,函数其实就是实现了某个功能的代码段。当我们要使用这个功能的时候,只需要调用函数就行了,而不是再写一段相似的代码。就好比说故事中的炼丹炉,太上老君在炼丹之前只需要把炼丹相关的程序设定好就行了,而不是每次都自己动手,去进行繁琐复杂的事情。
再举个简单的例子,奶奶使用电饭煲煮饭你看到过吧?现在煮饭只需要三个步骤:淘米掺水、上电、按煮饭按钮。在老爹小时候,煮饭可不是一件容易的事情,你得自己先烧一锅水,等水开了之后淘米,倒进锅里,然后一边烧火保持锅内的水沸腾,一边还要频繁搅拌,不让米粒沉降在锅底。
等到米粒五六分熟的时候,还要用筲箕将它们沥干,最后再用甑子把半生夹熟的米粒蒸熟。
而现在煮饭这个功能已经电饭煲实现了,所以我们现在煮饭只需要调用电饭煲的煮饭功能就行了,快捷又方便。
函数的本质作用就和炼丹炉、电饭煲一样,是实现了某种功能代码段,至于要实现什么功能,这就要靠我们程序员来定义了。」
有两个例子做分析论证,我慢慢理解了为什么要使用函数,以及函数是什么。既然我都明白了,小弦子肯定也早就悟得其真谛。
「既然已经知道why和what了,那么接下来就应该学习how,如何使用?其实不管是学习编程也好,还是学习其他的东西,你只要按照这个套路来,基本上不会出岔子。
在学习如何使用的过程中,我们依然用炼丹炉和电饭煲这两个例子来说明。
要使用函数,那咱们得先定义函数。你要炼丹,没有炼丹炉怎么炼?煮饭没有电饭煲怎么煮。所以我们如果要使用某个函数,必须得先定义。
当然了,不是所有函数都需要自己的定义,有可能别人已经给你定义好了,就像是print()函数,这个是C语言函数库,也就是开发C语言的那些科学家已经定义好了的,咱们直接拿来使用就行了。
你们想啊,咱们没有电饭煲的时候总不能自己造一个吧,可以去商店里面买一个,因为别人已经造好了。
好了,闲话休提,言归正传。
要定义个函数,实现一个功能,你总得给它起个名字吧?虽然这个名字只要符合之前讲过的其名法则即可,但是我们还是尽量让它贴近功能。你看炼丹炉、电饭煲这两个名字,人一听就知道是用来干什么的。
起名可是头等大事,不能含糊,名字起好了问题就解决一半了!当然这是不可能的,哪有那么便宜的事情。
接下来就是要完成这个功能,需要一些什么条件因素了。如果要炼丹,你总得准备草药啊什么的吧?要煮饭总得要米、水这些东西吧。
当然了,也不绝对。你们看,按照理论上来说炼丹炉和电饭煲都还有一些不需要任何东西的功能,比如说给孙悟空炼火眼金睛的时候,不就什么都没有放么?
然后就是这个功能要得到什么东西,你看,炼丹炼丹,最后得到的是仙丹,煮饭煮饭,最后得到的时候米饭。
所以我们的函数也可以得到一些东西,当然了也不是绝对的。如果炼丹炉就那么烧着玩儿,也不会得到仙丹是吧?
最后一步,就是具体功能的实现过程了,这个需要我们来做。
以上在C语言中都有它们专业的叫法,起的名字叫做函数名,需要的元素叫做参数,得到的结果叫做返回值。
上面的内容总结起来,一个函数的声明格式如下:
返回值函数名称(参数列表)
{
实现功能的代码;
return 返回值;
本站域名已经更换为m.adouyinxs.com 。请牢记。