C语言三境界

2280阅读 0评论2013-01-24 CUTianrui007
分类:C/C++



以前听过王国维论人生的三境界,深有同感,学了这么多年C语言,也有一点小感悟,与同行交流.

在我看来,C语言的学习有三重境界,分别是: 语言本身,OS, 硬件.



第一重:语言本身.

是指C语言本身的一些语言,简单地,如函数如何定义,
函数是否可以嵌套定义,
宏的用法,. 这些是最简单的.



第二重:OS.

语言其实是OS的外壳, 语言和OS间总是有着千丝万缕的联系,
主观地割断其间联系都是不科学的,
也注定你在语言上面不可能有深入的理解.
比如,
C编译后的文件有数据段,
代码段,
堆栈段,这些段如何加载,
PC机上加载和在嵌入式MCU中运行有什么不同.



第三重硬件,
这就比较具体和深入了.
对于从事嵌入式开发的人来说,
这个比较常见.
比如,
在写Bootloader,你要知道地址空间是怎么分配的,
MCU有多个Flash,
哪些是可用的,哪些是不能用的.
你所使用的MCUABI是什么,.



当然,每一层都有着不同的内涵,就看你怎么去理解了.



上一篇:郁闷,发Blog
下一篇:用Perl解析CANTrace文件