C的数据类型:
C语言中有两种数据类型,基本类型和自定义类型。C的强大之处体现在支持自定义数据类型,自定义的类型可以是一个基本类型,也可以是基本类型的一个组合。有了自定义类型的能力,数据类型的物种就不那么单一。
C函数的数据传递
C支持值传递和指针传递,指针传递赋予函数修改外部变量的能力,面向对象语言的引用传递的思想应源于此。指针的重要性也体现于此。
C的设计思想有圈住和出圈。圈住使你更安全,出圈使用更灵活。圈住使静,在代码块中更好的实现你的功能;出圈使动,是函数间的调用和值传递更灵活。指针提供了出圈的能力,指针使C灵动。
指针
如果基本类型、分支控制、函数是C的肉体,指针和自定义类型应是他的灵魂。
有了指针,函数间数据的传递更灵活。有了指针,函数和类型得以数据结构中存储,函数可以实现动态的调用。有了指针,可以实现类面向对象中的泛化调用,函数覆盖。是指针让C在运行时可以灵活的动起来,运行时动态的调用是灵魂,一跃成为了高级语言。
C与其他高级语言的区别
C在编译阶段做的工作少,这样他具有更大的灵活性,但是也给新手带来了很多麻烦,没有好的编程习惯和深入的了解,很容易造成各种各样的莫名其妙的错误。
其他高级语言在编译阶段做的多,类型检查,数组越界,变量初始化等,这样避免了很多错误,降低了编程门槛,但是也失去一些灵活和执行效率。