如何学好并精通C语言

合集下载

C语言自学入门技巧

C语言自学入门技巧

C语言自学入门技巧学习C语言不是一朝一夕的事情,但也不需要花费很长的时间才能精通。

下面店铺就为大家介绍一下C语言自学入门技巧吧!C语言自学入门技巧11、程语语言其实是一个很初级的工具,但是又必须熟练的掌握它,学懂一门编程语言就好像学会了写字,但是会写字的人不见得会写文章,而会写文章又不见的写得好。

可是如果不会写字,那就一定写不出文章来。

2、在学习C语言之前,应该学好计算机基础。

里面的很多概念对于C程序员都是非常重要的。

如果在着手学习C之前,或者已经开始学习C,但是碰到了很多问题,应该再把计算机基础的书拿来好好看看。

如果有足够的耐心,十足的毅力,应该再学习C语言之前学学汇编,这会对许多比较细腻的概念有清醒的认识。

那么可以在看完一遍C语言的教材后再看,但是一定要看一遍,一定会受益匪浅。

不管看什么书,先认真地看懂,不要贪速度,应该力求深入的理解。

如果能够比较熟练的解决一本教材上的所有习题,那么就应该转入对算法的学习,尽管此时的C语言还称不上精通,有许多细节问题还不了解,许多问题还没有碰到,但是这些问题会在后面的工作和学习中得到解决的。

3、不需要多少资料,掌握一本《The C Programming Language》就足够了。

继续学习就更加容易。

建议不要找捷径,通过考试除外,真正的水平提高是建立在编程实践积累基础上的,必须一个一个程序的完成才能提高。

C语言自学入门技巧2一、要读就读好书,否则不如不读所有初学者面临的第一个问题便是:如何选择教材。

好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。

不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。

大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。

虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。

这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。

C语言学习秘籍让你成为编程高手

C语言学习秘籍让你成为编程高手

C语言学习秘籍让你成为编程高手C语言是计算机科学领域中最常用和重要的编程语言之一。

掌握好C语言不仅可以让你在编程领域有很大的竞争优势,还能够更好地理解计算机底层运行原理。

本文将分享一些学习C语言的秘籍,帮助你成为一名编程高手。

1. 了解基本语法C语言的基本语法是编程学习的基础。

你需要掌握C语言的数据类型、变量、运算符、控制流等基本概念。

了解这些基础知识可以帮助你理解和编写简单的程序。

2. 深入学习指针指针是C语言中引人注目的特性之一。

熟练掌握指针的使用可以加强你对内存管理和数据结构的理解。

通过灵活运用指针,你可以实现更高效的算法和数据结构,提升程序的性能。

3. 掌握常用库函数C语言提供了许多常用的库函数,这些函数可以简化编程过程并提高代码的可读性。

例如,你可以使用<math.h>库中的数学函数来进行数值计算,使用<string.h>库中的字符串函数进行字符串操作。

熟悉这些常用库函数可以提高编程效率。

4. 大量练习编程编程是一门实践性很强的学科,光靠理论是远远不够的。

通过大量练习编写C语言程序,你可以提升自己的编程能力和解决问题的能力。

尽量选择多样化的练习题目,包括基础的算法题、数据结构实现以及项目实践等。

5. 阅读源代码阅读优秀的C语言源代码可以帮助你学习和理解编程技巧和设计模式。

选择一些开源的C语言项目,仔细阅读其源代码,并试着分析代码的结构和思路。

这样做可以培养你的代码质量意识和编程思维。

6. 调试和优化调试和优化是一个编程高手必备的技能。

学会使用调试工具和技巧,可以帮助你快速定位和解决代码中的问题。

此外,学会优化程序的性能也是非常重要的,可以通过选择合适的算法、数据结构优化和减少代码中的冗余,提高程序的运行效率。

7. 加入社区和团队加入C语言开发者的社区和团队,与其他编程高手互相交流和学习。

在这个过程中,你会遇到各种各样的问题和挑战,不断提升你的编程能力和解决问题的能力。

提升C语言技术水平的10个实用技巧

提升C语言技术水平的10个实用技巧

提升C语言技术水平的10个实用技巧C语言是一门广泛应用于系统开发和嵌入式编程的高级编程语言。

随着软件行业的发展,掌握C语言的技术水平对于程序员来说变得越来越重要。

本文将介绍10个提升C语言技术水平的实用技巧,帮助读者更好地掌握和应用这门编程语言。

1. 熟悉C语言标准库C语言标准库是C语言开发的基础,掌握常用的标准库函数,如stdio.h、stdlib.h和string.h等,可以提高编程效率和代码质量。

阅读官方文档和参考书籍,了解标准库函数的使用方法和常见应用场景,能够更好地解决实际问题。

2. 学习指针的使用指针是C语言的重要特性,理解和熟练使用指针可以提高程序的效率和灵活性。

掌握指针的基本概念和语法,学会指针的运算和指针与数组的关系,能够更好地处理内存和数据结构。

3. 掌握内存管理技巧C语言没有自动垃圾回收机制,程序员需要手动管理内存。

了解动态内存分配函数malloc和free的使用方法,避免内存泄漏和内存溢出的问题。

同时,熟悉内存布局和堆栈的概念,能够更好地优化程序的内存使用。

4. 编写可维护的代码良好的代码风格和结构可以提高代码的可读性和可维护性。

使用有意义的变量和函数命名,注释代码的关键部分,遵循一致的代码缩进和格式,能够更好地理解和修改代码。

此外,合理使用函数和模块化编程,能够提高代码的复用性和可测试性。

5. 调试和测试技巧调试是程序开发过程中不可或缺的一部分。

熟悉调试工具和技巧,如断点调试、变量监视和堆栈跟踪,能够快速定位和修复程序中的错误。

同时,编写测试用例和进行单元测试,能够提高代码的质量和稳定性。

6. 学习常用数据结构和算法掌握常用的数据结构和算法,如链表、栈、队列和排序算法等,能够更好地解决实际问题。

了解数据结构的特点和应用场景,熟练使用相关的操作和算法,能够提高程序的效率和性能。

7. 多阅读优秀的C语言代码阅读优秀的C语言代码是提升技术水平的有效方法。

通过阅读开源项目和经典的编程书籍,学习其他程序员的设计思路和编程技巧,能够拓宽视野,提高自己的编程能力。

如何学习并掌握C语言

如何学习并掌握C语言

如何学习并掌握C语言学习并掌握C语言是许多计算机科学学生和程序员的必修课。

C语言是一种通用的、高效的编程语言,广泛应用于系统软件、游戏开发、嵌入式系统等领域。

在学习C语言的过程中,有一些方法和技巧可以帮助我们更好地掌握这门语言。

首先,了解C语言的基础知识是非常重要的。

我们可以从学习C语言的基本语法开始,包括变量、数据类型、运算符、控制语句等。

通过掌握这些基础知识,我们可以更好地理解C语言的工作原理和编程思想。

其次,实践是学习C语言的关键。

只有通过实际编写代码并运行,我们才能真正掌握C语言的用法和技巧。

可以选择一些简单的练习题目,例如编写一个计算器程序或者实现一些简单的算法。

通过不断地实践,我们可以熟悉C语言的语法和常用函数,提高我们的编程能力。

此外,阅读优秀的C语言代码也是提高我们的学习效果的一种方法。

通过阅读别人写的高质量代码,我们可以学习到一些优秀的编程技巧和设计思路。

可以选择一些开源项目或者经典的C语言书籍,例如《C程序设计语言》等,来学习和借鉴他人的代码。

在学习C语言的过程中,遇到问题是很常见的。

当我们遇到问题时,不要害怕请教他人。

可以向老师、同学或者在相关的技术论坛上寻求帮助。

与他人交流和讨论问题,可以帮助我们更好地理解和解决问题,提高我们的学习效果。

除了以上的方法,还有一些其他的学习技巧可以帮助我们更好地掌握C语言。

例如,可以尝试使用一些集成开发环境(IDE)来编写代码,这样可以提高我们的编程效率。

同时,可以使用一些调试工具来帮助我们找出代码中的错误和问题,例如使用断点调试来逐步跟踪代码的执行过程。

总的来说,学习并掌握C语言需要我们付出一定的努力和时间。

通过了解基础知识、实践编写代码、阅读优秀代码、请教他人等方法,我们可以提高我们的学习效果,更好地掌握C语言。

同时,要保持持续学习的态度,不断地提升自己的编程能力。

只有不断地学习和实践,我们才能真正掌握C语言,并在实际应用中发挥它的价值。

提升 C 语言技术水平实用技巧说明

提升 C 语言技术水平实用技巧说明

提升 C 语言技术水平实用技巧说明在当今的计算机编程领域,C 语言作为一门基础且重要的编程语言,始终占据着不可替代的地位。

无论是开发系统软件、嵌入式系统,还是进行底层编程,C 语言都展现出了其强大的功能和灵活性。

然而,要想真正精通 C 语言,提升技术水平并非一蹴而就,需要掌握一些实用的技巧和方法。

一、扎实的基础知识是关键首先,要深入理解 C 语言的基本语法。

这包括数据类型(如整型、浮点型、字符型等)、变量和常量的定义与使用、运算符和表达式的运算规则等。

对于初学者来说,可能会觉得这些概念枯燥乏味,但它们却是构建复杂程序的基石。

例如,在定义变量时,要明确变量的作用域和生命周期。

局部变量在其所在的函数或代码块内有效,而全局变量则在整个程序中都可以访问。

理解这一点对于避免变量的误用和错误访问至关重要。

其次,掌握控制结构是必不可少的。

C 语言中的控制结构有顺序结构、选择结构(如 ifelse、switch)和循环结构(如 for、while、dowhile)。

通过合理运用这些控制结构,可以使程序的逻辑更加清晰,实现各种复杂的功能。

以循环结构为例,for 循环通常用于已知循环次数的情况,而 while 和 dowhile 循环则更适用于在不确定循环次数时,根据条件来决定是否继续循环。

二、多写多练,积累实践经验俗话说,“熟能生巧”,在 C 语言的学习中,这一点尤为重要。

通过大量的编程实践,可以更加深入地理解和掌握 C 语言的各种特性。

可以从简单的程序开始,如实现一个加法计算器、打印九九乘法表等。

随着技能的提升,逐渐尝试解决更复杂的问题,如实现一个冒泡排序算法、编写一个文件读写程序等。

在实践过程中,不要害怕犯错。

错误是学习的好机会,通过调试程序,查找并解决错误,可以提高自己的问题解决能力。

同时,要养成良好的编程习惯,如合理的缩进、清晰的注释等,这不仅有助于自己理解程序,也方便他人阅读和维护。

另外,参与开源项目或者与其他开发者交流合作也是很好的实践方式。

C语言学习方法攻略让你轻松掌握编程要点

C语言学习方法攻略让你轻松掌握编程要点

C语言学习方法攻略让你轻松掌握编程要点C语言是一门广泛应用于计算机科学领域的编程语言,掌握C语言对于从事软件开发和计算机编程的人来说至关重要。

然而,对于初学者来说,学习C语言可能是一项具有挑战性的任务。

本文将介绍一些有效的学习方法,助你轻松掌握C语言的编程要点。

一、理论与实践结合学习C语言时,理论知识和实践操作需要相辅相成。

理论知识包括语法规则、关键字、数据类型等基础知识,而实践操作则包括编写代码、调试程序等实际操作。

在学习过程中,应始终将理论与实践结合起来,通过编写小程序或实现简单算法来巩固所学知识。

只有亲自动手去实践,才能真正理解和掌握C语言的编程要点。

二、阅读优秀源代码阅读优秀的源代码是学习C语言的一种有效方法。

通过阅读他人编写的优质代码,你可以学习到各种编程技巧和最佳实践。

可以选择一些开源项目或者经典的编程书籍中的示例代码进行阅读。

在阅读的过程中,注意思考每一行代码的作用,理解其背后的逻辑。

通过阅读他人的代码,你不仅可以提升自己的编程水平,还能够汲取他人的经验和智慧。

三、解决实际问题学以致用是学习任何一门技术的基本原则,学习C语言也不例外。

在学习的过程中,尽量选择实际问题进行编程实践。

可以通过解决一些简单的问题,如实现一个计算器或者编写一个学生成绩管理系统等,来将学到的知识应用到实践中。

通过解决实际问题,你将更加深入地理解C语言的编程要点,并提高自己的解决问题的能力。

四、参加编程社区和讨论组参与编程社区和讨论组,是一个与他人交流学习的好方法。

在这些社区中,你可以和其他学习C语言的人交流经验,分享学习资源,讨论问题和解决方案。

你还可以从其他人的问题和解答中学到很多东西。

编程社区和讨论组的存在不仅为学习提供了便利,还能与其他编程爱好者建立联系,拓展自己的人脉圈。

五、利用学习资源互联网上有许多优质的学习资源可供利用。

你可以参考一些经典的C语言教材,如《C Primer Plus》、《C语言程序设计》等。

学习c语言的学习计划

学习c语言的学习计划

学习c语言的学习计划一、前言C语言作为一种通用的、高效的编程语言,在计算机科学领域有着广泛的应用。

无论是在嵌入式系统开发、操作系统编写还是应用程序开发等方面,C语言都发挥着重要作用。

因此,对于想要从事计算机编程或者软件开发的人来说,学习C语言是必不可少的一环。

在本文中,我将介绍一套完整的学习C语言的学习计划,包括学习内容、学习方法和学习目标等,并希望可以帮助读者更好的系统化学习C语言。

二、学习目标在学习C语言之前,我们需要先确定学习目标。

这些目标应该是具体的、可衡量的,并且要有一定的挑战性,以激发我们的学习动力。

1. 熟练掌握C语言的基本语法和特性;2. 能够编写简单的C语言程序,包括控制台输入输出、条件判断、循环等;3. 理解C语言的指针、内存管理和数据结构等高级特性;4. 能够独立完成中等难度的C语言编程项目;5. 通过C语言的学习,为以后学习更高级的编程语言打下基础;6. 获得C语言的相关证书或者参加编程竞赛,以证明自己的学习成果。

三、学习内容1. 学习工具准备学习C语言首先要准备相应的学习工具,包括计算机、C语言编译器、学习资料等。

推荐使用Visual Studio等集成开发环境,它里面包含了C语言的编译器、调试器和编辑器等工具,能够满足我们的学习需求。

2. 学习教材选择C语言的教材有很多,从入门级到高级的都有。

初学者可以选择一些入门级的教材,比如《C Primer Plus》、《C语言程序设计基础》等。

这些教材都是经典的C语言教材,内容详实、通俗易懂,非常适合初学者入门学习。

高级学习者则可以选择一些涉及C语言高级特性的教材,比如《C和指针》、《C专家编程》等。

3. 在线学习资源除了教材外,我们还可以通过一些在线学习资源来学习C语言。

比如可以通过Coursera等在线学习平台来学习C语言基础课程,也可以通过一些C语言编程博客、论坛等学习社区来进行交流学习。

另外,一些开放式课程资源库也会有C语言的相关课程,我们可以通过这些资源来进行学习。

C语言学习秘籍让你成为编程高手

C语言学习秘籍让你成为编程高手

C语言学习秘籍让你成为编程高手在计算机编程的世界中,C语言一直被誉为一门基础而重要的编程语言。

全球范围内的许多软件和系统都是采用C语言编写的。

对于想要成为一名编程高手的人来说,掌握C语言是必不可少的。

本文将为你提供一些学习C语言的秘籍,帮助你快速提升编程技能。

一、理解C语言的基本概念在学习任何一门编程语言之前,理解基本概念是非常重要的。

C语言的基本概念包括数据类型、变量、函数等。

数据类型决定了变量可以存储的值的种类,而变量则是用来存储和操作数据的容器。

函数是一段完成特定任务的代码集合,可以被多次调用。

熟悉这些概念是学习C语言的第一步。

二、学习C语言的语法规则C语言有严格的语法规则,学习和掌握这些规则对于编写正确的代码至关重要。

其中包含了变量的声明和初始化、条件语句、循环语句等等。

了解和熟悉这些语法规则,能够帮助你编写出结构清晰、逻辑严谨的代码。

三、掌握常用的C语言库函数C语言提供了许多实用的库函数,这些函数能够大大简化编程工作。

学习和掌握常用的C语言库函数,可以提高编写代码的效率。

例如,stdio.h库提供了输入输出函数,如printf和scanf;string.h库提供了字符串处理函数,如strcpy和strlen等等。

熟练使用这些函数能够让你的代码更加简洁高效。

四、不断练习和实践学习任何一门编程语言,光靠理论是远远不够的。

要成为一名编程高手,需要不断地练习和实践。

编写小型的C语言程序,解决一些简单的问题,逐步提升自己的编程能力。

通过实践,不仅能够巩固已学的知识,还可以不断发现和解决问题,提高自己的分析和解决问题的能力。

五、阅读并参考优秀的代码在学习C语言的过程中,阅读并参考优秀的代码是一种非常有效的学习方法。

通过阅读优秀的代码,可以学习到其他程序员的编程思路和技巧。

可以通过开源项目、论坛、社交平台等途径寻找优秀的C语言代码,并结合自己的实际需要进行学习和应用。

六、加入编程社区加入一个活跃的编程社区,和其他编程爱好者交流和讨论,也是提升编程技能的好方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

程序员之路——如何学习C语言并精通C语言程序员之路——如何学习C语言学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。

如何以最小的代价学习并精通C 语言是本文的主题。

请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着你需要经历艰苦的过程。

一、要读就读好书,否则不如不读所有初学者面临的第一个问题便是:如何选择教材。

好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。

不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。

大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。

虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。

这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。

这本书的主要缺点是:例子程序非常不专业,不能教给你程序设计应该掌握的思考方式;程序风格相当地不好,会让你养成乱写代码的恶习;错误太多,曾经有人指出过这本书的上百个错误,其中不乏关键的概念性错误。

好了,这本书我也不想说太多了,有兴趣大家可以百度一下:)Kernighan和Ritchie的《The C Programming Language》(中译名《C程序设计语言》)堪称经典中的经典,不过旧版的很多内容都已过时,和现在的标准C语言相去甚远,大家一定要看最新的版本,否则不如不看。

另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C语言参考手册》是十分必要的。

《C语言参考手册》就是《C Reference Manual》,是C语言标准的详细描述,包括绝大多数C标准库函数的细节,算得上是最好的标准C语言的工具书。

顺便提一句,最新的《C程序设计语言》是根据C89标准修订的,而《C语言参考手册》描述的是C99标准,二者可能会有些出入,建议按照C99标准学习。

还有一本《C和指针》,写得也是相当地不错,英文名是《Pointers on C》,特别地强调指针的重要性,算是本书的一个特点吧。

不过这本书并不十分适合初学者,如果你曾经学过C语言,有那么一些C语言的基础但又不是很扎实,那么你可以尝试一下这本书。

我相信,只要你理解了指针,C语言便不再神秘。

如果你已经啃完了一本C语言教材,想要更进一步,那么有两本书你一定要看。

首先是《C Traps and Pitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。

要注意一点,这本书是二十多年前写成的,里面提到的很多C语言的缺陷都已被改进,不过能够了解一些历史也不是什么坏事。

然后你可以挑战一下《Expert C Programming》(中译名《C专家编程》),书如其名,这本书颇具难度,一旦你仔细读完并能透彻理解,你便可以放心大胆地在简历上写“精通C语言”了。

切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。

如果你看不懂,那你一定是缺失了某些必需基础知识。

此时,你要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。

把基础知识补充完毕再回头来学习,才会真正的事半功倍。

二、Unix/Linux还是Windows,这是个很大的问题不同的编程环境会造就出不同思维的程序员。

Windows的程序员大多依赖集成开发环境,比如Visual Studio,而Unix程序员更加钟爱Makefile与控制台。

显而易见,集成开发环境更容易上手,在Windows上学习C语言,只需要会按几个基本的Visutal C++工具栏按钮就可以开始写Hello, World!了,而在Unix下,你需要一些控制台操作的基本知识。

有人也许认为Unix的环境更简洁,但习惯的力量是很大的,大家都很熟悉Windows的基本操作,而为了学习C语言去专门装一个Unix系统,似乎有点不划算。

对于一个只懂得Windows基本操作、连DOS是什么都不知道的新手而言,尽快做一些有趣而有意义的事情才是最重要的。

用C语言写一个小程序远比学习ls、cat等命令有趣,况且我们要专注于C语言本身,就不得不暂时忽略一些东西,比如编译链接的过程、Makefile的写法等等等等。

所以我建议初学者应该以Visual C++ 6.0(不是VisualC++ .NET)或者Dev C++作为主要的学习环境,而且千万不要在IDE的使用技巧上过多纠缠,因为今后你一定要转向Unix环境的。

Visual C++ 6.0使用很方便,调试也很直观,但其默认的编译器对C标准的支持并不好,而Dev C++使用gcc编译器,对C99的标准都支持良好。

使用顺带提一下,很多大学的C语言课程还在使用Turbo C 2.0作为实验环境,这是相当不可取的,原因其一是TC 2.0对C标准几乎没有支持,其二是TC 2.0编译得到的程序是16位的,这对今后理解32位的程序会造成极大的困扰(当然,用djgpp之类的东西可以使TC2.0编译出32位程序,不过那过于复杂了)。

等你学完一本C语言的教材,你一定要转向Unix平台继续学习,几乎所有的C语言高级教程都是基于Unix平台的(比如《C专家编程》)。

转变的过程是痛苦的,你需要面对的是各种纷繁复杂的命令,完全不同于Windows平台的思考方式,但是这种痛苦是值得的。

Unix与C是共生的,Unix的思考方式和习惯更加符合C语言的思考方式和习惯。

在Unix下,你可以找到无数优秀的源代码供你尽情阅读,你可以方便地查看某个库函数的联机手册,还可以看到最优秀的代码风格归结起来就是一句话:初学C语言,建议使用Windows系统和集成开发环境,在准备向“高手”方向努力时,请先转向Unix平台。

三、万事俱备,你就是东风书已选定,环境配置完成,正所谓万事俱备,只欠你自己的努力了。

请从书的前言开始,仔细地阅读手头的教材,很多人看书喜欢直接从第一章开始看,这是错误的做法。

前言是作者对整本书的大体介绍,作者一般会告诉你需要什么基础才能够顺利阅读本书,这可以帮助你检验自己的基础知识是否已经具备。

看完前言,还要浏览一下目录,了解一下书的整体结构,顺便给自己安排一下学习计划。

学习C语言,必需注意每一个细节,书上的例子代码一定要自己亲自敲一遍,编译执行输出都跟书上说的一致才能算是学完了一个例子,如果不一致,就要仔细找原因。

出了书本上有的例子,自己还要“创造”一些例子,比如学习运算符优先级的时候,可以写几个相同的表达式,在不同的位置加上括号,看看有哪些不同的行为,比如*p++和(*p)++,又比如a = b == c、(a = b) == c和a = (b == c)等等。

自己抄的书上的例子以及改造之后的例子,还有自己“创造”的例子,都应该仔细地归类保存,并且要在源代码中写上简短的注释,阐述这个例子的意图。

例子之后就是习题了,我建议初学者把所有的习题都独立做一遍,然后对照答案的代码,看看自己的代码有那些不足,再试着修改自己的代码。

很多人不重视习题,这是极大的错误,因为作者通常会在习题中说明一些重要的道理,而不是单纯地检验前面的知识。

也许你认为这样学习太慢,其实不然。

学得细致就不用走回头路,等你学到后面才发现自己前面没搞清楚,那才是真的得不偿失。

一般说来,整本书读完,你应该完成数千行乃至上万行的代码,无论是原封不动照抄书上的,还是自己心血来潮写就的,都是今后继续学习的一笔财富。

以我自己举例,阅读《Windows核心编程》时(我只阅读了3/4的内容),除了抄书上的代码,还自己写了很多例子,一共有5574行(用unix下的wc工具统计),时隔多日,我早已记不清Windows的系统编程了,但只要花几分钟翻出以前的代码看看,便会重新了然于胸。

所谓好记性不如烂笔头,就是这个道理。

仔细读书、认真抄写源代码、独立完成习题外加更进一步的实验,最后将所有的代码留下,成为自己的经验和财富,绝对的辛苦,也绝对的事半功倍。

当然,这种方式只适合学习需要精通的技术,如果不是学习C语言,你还要具体情况具体分析。

写到最后,还有非常非常重要的一点没有提及——代码风格,从最开始学习就必须强迫自己模仿最优秀的代码风格 .程序员之路——如何学习C语言并精通C语言程序员之路——如何学习C语言学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。

如何以最小的代价学习并精通C 语言是本文的主题。

请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着你需要经历艰苦的过程。

一、要读就读好书,否则不如不读所有初学者面临的第一个问题便是:如何选择教材。

好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。

不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。

大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。

虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。

这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。

这本书的主要缺点是:例子程序非常不专业,不能教给你程序设计应该掌握的思考方式;程序风格相当地不好,会让你养成乱写代码的恶习;错误太多,曾经有人指出过这本书的上百个错误,其中不乏关键的概念性错误。

好了,这本书我也不想说太多了,有兴趣大家可以百度一下:)Kernighan和Ritchie的《The C Programming Language》(中译名《C程序设计语言》)堪称经典中的经典,不过旧版的很多内容都已过时,和现在的标准C语言相去甚远,大家一定要看最新的版本,否则不如不看。

另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C语言参考手册》是十分必要的。

《C语言参考手册》就是《C Reference Manual》,是C语言标准的详细描述,包括绝大多数C标准库函数的细节,算得上是最好的标准C语言的工具书。

顺便提一句,最新的《C程序设计语言》是根据C89标准修订的,而《C语言参考手册》描述的是C99标准,二者可能会有些出入,建议按照C99标准学习。

还有一本《C和指针》,写得也是相当地不错,英文名是《Pointers on C》,特别地强调指针的重要性,算是本书的一个特点吧。

不过这本书并不十分适合初学者,如果你曾经学过C语言,有那么一些C语言的基础但又不是很扎实,那么你可以尝试一下这本书。

我相信,只要你理解了指针,C语言便不再神秘。

如果你已经啃完了一本C语言教材,想要更进一步,那么有两本书你一定要看。

首先是《C Traps and Pitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。

相关文档
最新文档