background image

你就试一试吧,如果写不出来,也不要着急,回过头来再继续研究例程,想想自己为什
么写不出来,然后再去写这段程序,反反复复,直到你手到擒来为止,祝贺你,你快入

 

3

 

写程序的最高境界其实就是掌握各种解决问题的手段(数据结构)和解决问题的方法(算法)。
 
是不是写出底层程序就是程序设计高手呢?非也,写底层程序,无非是掌握了硬件的结
构,况且硬件和硬件还不一样,要给一个芯片写驱动程序,无非就是掌握这块芯片的各
种寄存器及其组合,然后写值读值,仅此而已。这不过是熟悉一些 io 函数罢了。那么怎样
才算精通程序设计呢?怎样才能精通程序设计呢?举个例子:你面前有 10 个人,找出一

个叫 张三 的人,你该怎么办?第一种方法:直接对这 10

个人问: 谁叫张三 。第 2 种

方法:你挨个去问 你是不是张三? ,直到问到的这个人就是张三。第三种方法:你去挨

个问一个人 你认不认识张三,指给我看 。不要小看这个问题,你说当然会选第一种方法,
没错恭喜你答对了,因为这个方法最快,效率最高,但是在程序设计中找到解决问题的
最优方法和你用的手段却是考验一个程序员程序设计水平的重要标志,而且是不容易达
到的。刚才这个问题类似于数据结构和算法中的:Map 数据结构,穷举查找和折半查找。
所以掌握好数据结构和一些常用算法,是登峰造极的必然之路。最后给大家推荐严尉敏的

《数据结构》清华大学出版社,希望每一个想成为程序设计高手的人研读此书。[编辑:赵

]

 

 

 

 

 

学习不论讲不讲方法,最终都能学会。但是别人 1 个月学会了,而你却 100 年才学会,
这不就晚了么?:)所以说,学习还是要讲究方法的。学习方法正确,事半功倍;学习方

 

什么才是学习 C 语言的捷径?我的答案是看书。书中所写,是前人数十年经验所写,看十
本书,就相当于汲取了前人数十年的功力,那么你的内功也会迅速上升 1 甲子。:)书当
然要看好书,只有好书才营养丰富。假如你花了 1 天时间看了一本破书,而该书介绍的知
识虽然对于你来说是全新的知识,但是由于书中组织不当、或者深度不够,使你获取的营
养很少,还不如自己研究一天来的快,这种书就不值当看了。学习 C 语言要看那些好书?
我认为首先要把基础书给看扎实了,比如《C 语言之四书五经》中介绍的 4 本。(虽然这些
书很多已经绝版了,但我相信电子版也是很有益处。况且,如果你真的想看,我相信你一
定有办法搞的到。)这些书你会在很短的时间内看完(比如一两个月),这取决于你的基
础和悟性。之后要看那些书呢?我不妨再列几本。Bjarne Stroustrup 的《C++程序设计语
言》(The C++ Programming Language)一定要看,这本书里面对于 C 的一些基础
概念的定义,比我见过的其他任何 C 语言书都要全,都要仔细;Bjarne Stroustrup 的
《 C++ 语 言 的 设 计 与 演 化 》 ( The Design and Evolution of C++ ) 和 David 
R.Hanson   的 《 C

 

语 言 接 口 与 实 现 创 建 可 重 用 软 件 的 技 术 》 ( C Interfaces and 

Implaementations Techniques for Creating Reusable Software)一定要看,这两
本书讲述了如何用 C 来实现异常处理、实现类型的封装和扩展等一些大的项目中经常用到