1.c语言等于面向过程么?
关于这个疑问,大家都有相同的误区的经历。在大学毕业步入职场,水平还未完备的情况下,这个问题是肯定的。但是没想到有些经过数年工作经验还是没有搞清楚这个问题。因此我觉得有必要写一篇随笔。
由于国内的计算机教师都没有经过工程方面的洗礼,因此对于这些概念都是模棱俩可,不能清晰的理解这个本身差异。再加上国内的计算机环境,这些方面短处比较多吧。接着不说废话。
其实C语言是一种工具,面向过程是思想。这2个其实完全不搭嘎。c语言也可以面向对象开发,甚至面向切面,只是需要一些技巧以及相应的功底。正如面向过程,面向对象则是计算机前辈经验的积累,从更高的角度推动的语言的发展。而让语言本身的发展直接支持相应的思想。
c语言其实完全是一种革命,是一种几乎可以完全独立于相应硬件平台,另外将所有的abi的接口规范化。就凭这2点,c语言完全是前无古人,估计后无来者。。c语言也是建立b语言的基础。另外c语言本身有很多陷阱。尤其是指针跟运算符优先级,默认值,类型不一致强转。值的截断,结构体的内存布局等等。这些都是c的困难。
今天先写到这把。。