《C语言函数的旁支末节》

对!你想的没错,猪猪我又来“水”文章了,就是一个闲谈,说说函数使用或者是定义时候需要注意的一些细节,那么如果猪猪说的有问题,还请移步评论区斧正,猪猪码字不易,还请各位帅哥靓女们动动小手一键三连,爱你们哦亲!

函数分为三大部分:函数名,函数体,返回值

【1】函数名

在c语言的语法中,是没有java中重载这个概念的,也就意味着你不可以定义两个函数名相同的函数,即使他们的调用的值不相同也是不可以的,而且函数名最好写的让别人望名知意,千万别用中文命名,反正猪猪我是觉得看着不三不四。

【2】函数体

函数内部就是需要你实现的功能了,但是需要主要主意的是,函数体内部定义的变量是零时变量,也就是说出了这个函数体就会销毁,所以你在函数内部使用的数据,出来这个函数你还想使用时不大可能的,除非你定义的是全局变量。

【3】返回值

返回值就是将你函数最终执行的结果返回给你调用函数的地方,但是你如果不需要这个函数有返回值的话,你就可以不适用这个返回值,有的人就问了,什么情况下不需要返回值?打个比方,如果你写一个函数,作用是打印出“猪猪最帅”这四个字,这需要返回吗?这结果就直接出来了好吧,需要啥返回值。这个时候有聪明的帅哥靓女就问了,你前面不是说,出了函数,空间就释放了吗?为啥返回值还在,这个就涉及倒函数栈帧的概念了,后面猪猪的文章中会说到,现在你就只需要知道,返回值被放在寄存器里面了,然后寄存器把里面的数据传给被接受者,从而完成数据的返回。

至于寄存器是啥?轻移步于猪猪的另外一篇文章《计算机存储结构浅析》。

【4】函数定义问题

在函数定义的时候必须明确自己需要返回吗?返回值是啥类型?因为好多帅哥靓女初学c语言的时候看到老师总是写int,然后自己不管其他看到也就写int,结果导致自己的代码总是报错,你返回值是什么数据类型,你的函数返回值就写什么类型的。同理,你函数传递参数的时候传递的是啥类型,在定义函数的时候,你接受就要写啥类型,这个时候有的聪明的帅哥就要问了,如果我返回值返回的时候有时候数据是int,有时候是double咋办?这个时候你就要想想你前面学的知识了,我们是不是学过一个强制类型转化?管他啥类型直接转化为精度更大的类型就成了,反正不会错!而且接收值的类型需要和函数返回值的类型是一样的。

tips:函数使用时可以一个函数中包含其他的函数一起使用,但是不可以定义的时候包含其他的函数一起定义。但是猪猪觉得吧!但凡是个正常人都不会去嵌套定义。

你可能感兴趣的:(c#)