C笔记小结
c语言对比java语言多了对底层的支持,java多了面向对象。c具有高效,结构化等特点,并且有一个原则是充分相信程序员。
编译时以文件为单位,以预编译和编译为方式,在预处理中以预编译指令为规则。
数据结构除了基本的类型外,相对预高级语言,多了重要的数组和指针以及 定义类型Typedef 的概念,数组和指针是c建立其他高级类型的基石,如字符串,函数指针使函数也可以当做参数传递给函数。加上Typedef 创建了结构体和抽象数据,使其可以想面向问题编程。
存储数据类型也就是内存方面分为:静态存储,动态存储,和程序员控制的malloc,calloc,free函数。
另外一些面向Bit或位的特殊的数据和操作,如位操作,位字段,联合。
相当于java匿名结构,c中的复合文字来创建匿名结构。
以及一些c的细节输入输出函数如scanf gets getchar 对空格和回车的处理,类型修饰符const 指针的类型,多维数组和指针的关系,变长数组,以及不同存储类型数据的初始化以及语言的顺序点概念,以及多文件编译的处理。
它以静态编译为根基也有动态的变长数组和手动申请内存。
在经过理解全程大概,和普及骨干和枝叶,以及骨干和枝叶结合后,就是从多到少再到多的过程。