很久以前,软件开发的世界还是一片浑浑噩噩,不管开发什么软件都面临着复杂性这个问题,代码里面到处是goto语句,程序的流程随意跳转。众生写代码时,越写到后面越不知道自己写的是什么。这时候出现一位巨人,它就是结构化编程。
结构化编程的基本思想是:
在开始之前,请务必看这篇文章: 漫谈C指针:参数传递的三道题目
我们都知道:C语言中函数参数的传递有:值传递、地址传递、引用传递这三种形式。题一为值传递,题二为地址传递,题三为引用传递。
值传递大家都应该很清楚,作为参数的变量,传递给函数执行后,自己的变量值是不变的。它(实参)仅仅只是把值赋给了形参,自己实际上是没有参与函数运算的,参与的是形参,这个就是参数的值传递。
地址传递呢?地址传递跟值传递也没有什么不同,值传递是把变量的值传递给形参去参与函数运算,而地址传递则把变量的地址传递给形参去参与函数运算。当然,如果函数改变了变量地址的值,实参的值也会变化的。
最后是引用传递,也是我们本小节的重点。引用传递的调用方式与值传递一样的,而形参则引用了实参,在函数里头操作的是实参,而不是像上面两种操作形参那样。也就是函数是直接修改实参的值了。
其实也没什么难的,弄懂了这些概念就好。
现代魔法 推荐于 2013-02-27 10:23