怎么学C语言最好?大师求大神帮忙。
循序渐进地学习任何知识永远是最好的方法。可惜很多人都知道这个道理,却总想走所谓的捷径。如果你是一个刚刚开始学习编程的中学生,或者是一个刚刚进入计算机学院的本科生,或者是一个立志在计算机领域有所作为的初学者,你一定渴望知道从哪里开始学习计算机技术。我的建议是:数学,英语,C语言。数学和英语的重要性不用我强调。你可能从幼儿园就开始学习它们了。请永远把它们放在最重要的位置,不管你学不学计算机。C语言为什么这么重要?先说学习方法。书本上描述的东西,没有我们的亲身实践,是很难被彻底消化吸收的。计算机组成原理解释了浮点数的格式。如果我们能看到并分析内存或寄存器中浮点数的表示,它比纯粹的理论强1000倍。数据结构和算法好像很难。如果你能实现书上的例子,然后做完习题,光是吃一本好书,你也能成为算法高手。其实操作系统原理不仅仅是原理,只有做一些内核实验才能真正深入了解;有很多新潮的技术,比如JavaEE,PHP,Ajax,。网等。很多专家学习这些技术只需要很短的时间。不用说,他们一定是C语言方面的专家。c语言是几乎所有计算机技术的通用工具,包括计算机的各种基础理论。没有掌握C语言的决心,不要涉足计算机领域。为什么是C语言而不是C++,不是Java而不是别的?因为c语言最简单。你需要掌握一门语言工具,但可能不需要“面向对象”、“模板”、“函数重载”等一大堆概念。c语言足够低级,非常非常接近计算机的底层结构,不会让你迷失在汪洋的概念海洋中。除了“指针”之外,C语言没有真正的难点,“指针”是理解计算机底层结构本质的关键。不要去想应该学什么。等你掌握了C,你就知道下一步该怎么做了。如果你对操作系统的内部感兴趣,可以尝试研究Unix的内核。除了C语言,你还需要一些汇编语言和保护模式的知识。如果你对算法感兴趣,恭喜你,C语言足够了;如果你对Windows编程感兴趣,去看看Windows编程。作者明确告诉你“只需要C语言的基础”。如果你对任何其他语言感兴趣,那就去学吧,但我建议先学C++,因为你需要一些“面向对象”的知识。学习C语言不是一朝一夕的事,但不是十年就能掌握的。如何以最小的代价学习和掌握C语言是本文的主题。请注意,即使是“最小成本”也绝不是捷径,而是要在最短的时间内获得最大的收益,这也意味着你需要经历一个艰苦的过程。第一,读好书,否则还不如不读。所有初学者面临的第一个问题是:如何选择教材。良好的开端是成功的一半,选择一本优秀的教材是事半功倍的关键因素。不幸的是,学校通常会给你分配一本很差的C语言教材。幸运的是,你可以重新选择。著名教授谭浩强出版了一本书《C语言编程》,据说发行量超过400万册。据我所知,很多学校都会推荐这本书作为C语言教材。虽然我的名字(谭浩宇)和教授只差一个字,但我极其坚决地要黑他的书。这本书不是为计算机专业的学生写的,而是为需要参加计算机等级考试的其他专业的学生写的。这本书的主要缺点是:示例程序非常不专业,无法教会你编程应该掌握的思维方式;程序风格相当不好,会让你养成乱涂乱画代码的坏习惯;错误太多了。有人指出了这本书的数百个错误,其中有许多关键的概念错误。嗯,这本书我不想说太多。有兴趣可以百度一下:)Kernighan和Ritchie的C程序设计语言是经典,但是老版本的很多内容已经过时,与现在的标准C语言相差甚远。一定要看最新版本,不然还不如不看。另外,即使是最经典、最权威的书籍也不可能面面俱到,所以手边放一本C语言参考手册是很有必要的。C语言参考手册就是C参考手册,是对C语言标准的详细描述,包括了大部分C标准库函数的细节,可以算是标准C语言的最佳参考书。对了,最新的C编程语言是按照C89标准修订的,而C语言参考手册描述的是C99标准。可能会有一些出入,建议按照C99标准学习。还有一本书《C与指针》,也写得相当不错。英文名是“Pointers on C”,特别强调了指针的重要性,这是本书的一大特色。但是,这本书不太适合初学者。如果你学过C语言,有一些C语言的基础知识,但是不是很扎实,那么你可以试试这本书。相信只要懂了指针,C语言就不再神秘了。如果你已经吃完了一本C语言教材,还想更进一步,那么有两本书是你必须要看的。第一本是C陷阱和陷阱,一本非常薄的小册子,内容非常有趣。需要说明的是,这本书是20多年前写的,里面提到的C语言的很多缺陷都得到了改进,但了解一些历史也不是坏事。然后就可以挑战专家级的C编程了。顾名思义,这本书相当难。一旦你认真阅读,理解透彻,你就可以放心地在简历上写上“掌握C语言”了。记住一个原则,不要看你目前看不懂的书,那是浪费生命。如果看不懂,一定是缺少了一些必要的基础知识。此时,你要仔细分析你需要补充什么,然后去书店找关于这些内容的书。只有把基础知识补上,再回来学习,才能真正事半功倍。