无意在优酷上看了一集郝斌老师C语言课,绪论第一讲,说的非常有趣,对整个C语言的把握和总结也很到位。摘录些许如下
趣味点:
1、1980年面向对象OO语言开始产生
2、结构化语言中最重要的是C
2.5、C语言的流行主要是因为UNIX的流行,UNIX的第5版是Ken.Thompson & Dennis.M.Ritchie用C语言重新编写的
3、结构化语言具有软件工程上的缺陷性,编写大规模软件缺陷...
4、C++是C的一个超集,是最复杂的一种OO语言
5、Java是sun公司对C++的一种简化与改装,减少了复杂性
6、微软的C#几乎是Java的另一种版本,二者基本相同
7、Java和C#的通用性、平台无关性最佳,但是速度相对C、C++较慢
8、程序员市场主要是C/C++、Java、C#三分天下,面向对象语言中Java的难度比C++要低不少,学习C后可以直接先学习Java或者C#。
C的优缺点:
优:1、代码量小
(拿金山公司的WPS和微软的Word代码量比较,金山的WPS用C语言写的)
2、速度快(较接近底层)
(三大OS的内核都是C语言编写,UNIX和LINUX都是纯C,windows的外壳是C++写的)
(拿游戏CS和魔兽比较,CS的游戏引擎用C编写,速度快,射击类游戏,且需要的电脑配置不高)
3、功能强大
(指针、结构&联合等核心特点)
缺点:1、危险性比较高,对程序员要求高
2、面向过程语言,开发周期长,代码超过10万行很容易崩溃(但是OS的几百万行代码就是用C编写的,可见对工程能力的要求很高)
3、可移植性,相对Java要弱
C语言主要应用(系统开发):
1、操作系统
2、驱动开发
3、嵌入式开发
4、数据库开发
算法---》数据结构---》指针方法
课程大纲:
0、简介
1、基本编程知识
2、数据类型
3、运算符和表达式
4、(重点★)流程控制
5、(重点★)函数
6、数组
7、指针
8、变量的作用域和存储方式
9、扩展数据类型(typedef、结构、联合)
10、专题:
字符串处理
进制转换
补码
(重点★)动态内存分配
综合应用:链表