自学c语言,有什么好的建议或方法吗?

Posted 人邮异步社区

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自学c语言,有什么好的建议或方法吗?相关的知识,希望对你有一定的参考价值。

不管背景如何,你都可能有以下4样技能有待提高。

读写能力

如果你平时使用IDE的话,尤其如此。不过大体来说我发现程序员略读的时候太多了,从而导致理解性阅读能力有些问题。他们将代码扫视一遍就觉得自己读懂了,其实不然。其他编程语言还提供了各种工具,从而避免让程序员直接撰写代码,所以一旦面对C这样的编程语言,他们就立马崩溃了。最简单的办法就是要理解每个人都有这样的问题,解决方案就是强迫自己慢下来,更加细致地去读写代码。一开始你也许会觉着很痛苦、很烦躁,那就增加自己休息的频率,最后你会觉得这其实也很容易做到。

关注细节

这方面没有人能做得好,这也是产生劣质软件的最大成因。其他编程语言会让不够专注的你蒙混过关,但C语言却要求你完全聚精会神,因为C语言直接和计算机打交道,而计算机又是极其挑剔的。在C的语境中没有“有点儿像”或是“差不多”这样的说法,所以你需要专注。反复检查你的工作。在证明正确之前,要先假设一切都可能是错的。

发现差异

用过其他编程语言的程序员有一个问题,就是他们的大脑已经被训练成可以发现那种语言中的差异,而不是C语言中的差异。当你在对比你的代码和标准答案时,你的视线会直接跳过那些你认为不重要或不熟悉的部分。我给你的解决办法是:强迫自己观察自己的错误。

规划和除错

我喜欢其他更简单的编程语言,因为我可以“胡搞乱来”。我把想法敲出来,然后就能直接在编译器里看到结果。这些语言可以让你很方便地尝试新的想法,但你有没有发现:如果你一直用“乱改直到能用”的方法写代码,到头来就是什么都不能用了。C语言对你要求比较高,因为它要求你先计划好要创建的东西。当然你也可以偶尔胡乱弄弄,但和其他编程语言相比,你需要在更早的阶段就开始认真做计划。在你写代码之前,我会教你如何规划程序的关键部分,希望这能同时使你成为一个更优秀的程序员。即使是很小的计划也能让你的后续工作更为顺利。

在学习C语言的过程中,你将被迫更早、更多地应对这些问题,所以学习C语言更能让你成为一名更好的程序员。你不能对自己写的东西思维不清,否则什么都不会做出来。C语言的优势是,作为一门简单的语言,你可以自己把它弄明白,因此如果你要学习机器的工作原理,并增强这些核心的编程技能的话,C语言是上佳的选择。

以上内容来自《“笨办法”学C语言》一书

入门C语言书籍推荐

C Primer Plus 第6版 中文版

 

本书采用以下写作策略。

  • 在介绍C语言细节的同时,讲解编程概念。本书假定读者为非专业的程序员。
  • 每次尽量用短小简单的示例演示一两个概念,学以致用是最有效的学习方式之一。
  • 当概念用文字较难解释时,则用图表演示以帮助读者理解。
  • C语言的主要特性总结在方框中,便于查找和复习。
  • 每章末尾设有复习题和编程练习,帮助读者测试和加深对C语言的理解。

为了获得最佳的学习效果,学习本书时,读者应尽量扮演一个积极的角色。不仅要仔细阅读程序示例,还要亲自动手录入程序并运行。C是一种可移植性很高的语言,但有时在你的系统中运行的结果和在我们的系统中运行的结果不同。经常改动程序的某些部分,运行后看看有什么效果。偶尔出现警告也不必理会,主要是看一下执行错误操作会出现什么状况。在学习的过程中应该多提出问题和多练习。用得越多,学的知识就越牢固。

全书共17章。第1章、第2章介绍了C语言编程的预备知识。第3章~第15章详细讲解了C语言的相关知识,包括数据类型、格式化输入/输出、运算符、表达式、语句、循环、字符输入和输出、函数、数组和指针、字符和字符串函数内存管理、文件输入输出、结构、位操作等。第16章、第17章介绍C预处理器、C库和高级数据表示。本书以完整的程序为例,讲解C语言的知识要点和注意事项。每章末尾设计了大量复习题和编程练习,帮助读者巩固所学知识和提高实际编程能力。附录给出了各章复习题的参考答案和丰富的参考资料。

本书可作为C语言的教材,适用于需要系统学习C语言的初学者,也适用于巩固C语言知识或希望进一步提高编程技术的程序员。

C Primer Plus 第6版 中文版习题解答

本书是畅销书《C Primer Plus(第6版)中文版》的配套习题答案,针对书中的复习题和编程练习,给出了解题思路和答案。

本书共分为17章,每一章的主题与《C Primer Plus(第6版)中文版》完全一致。每章开篇采用思维导图的方式列出本章的知识点,然后对每章的重点内容进行了梳理总结,最后则对每章中的复习题和编程练习进行了分析并给出了解答思路,确保读者在彻底夯实理论知识的同时,进一步提升实际编程能力。

 

以上是关于自学c语言,有什么好的建议或方法吗?的主要内容,如果未能解决你的问题,请参考以下文章

【重赏】想要自学C语言

编程方面,语言用 C/C++,想做个界面,不想用 MFC,除 了QT,还有啥好的做界面的方法吗?

如何用C语言实现在linux下开发软件 请大虾帮忙解决

软件开发高手请进!!!

初学c语言用啥系统好?

初学者python怎么学