要命的函数

前言:C语言里的函数跟我们数学里学的函数好像并不是一个东西,C语言里的函数它没有解析式,没有图像,没有坐标。函数,从本质意义上来说,就是用来完成一定的功能的......好啦,概念啥的去死,没啥用。关于函数,有些东西要讲。

1.先看这段代码,然后是它的运行结果。十分简单,我们通过定义和调用函数,把a[0]和a[1]里面的元素交换了一下。实现了我们要找出这两个数的大小。

2.同样是类似的问题,我们再看一段代码,它的输出结果是很明显这不符合我们的本意。在这个代码里面,为什么我们的a和b的值没有进行交换呢,我们明明已经调用了交换函数可是a和b的值并没有交换。这里又涉及到了函数的一些神奇的地方,就是你传参的过程中,你传过去的是什么,传回来的不会变。那就又有一个问题了,为什么第一个代码里面可以进行交换?这是因为数组传过去的不是值,而是数组的地址,函数改变的是他的值,没有改变地址。而第二个代码里,传过去是a和b的值,传回去的还是a和b的值,不会变。

3.如此一来那是不是函数就没啥用了呢,并不是,请看下一个代码,再看其输出结果,是吧,我们只需要把printf这个语句放到函数里面就可以不用担心这些了,因为在函数里面它是已经交换了的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值