c语言使用系统,使用C语言入门

08f792d7d00cd8a6539c751f715dac4d.png

全部展开

逐步学习任何知识始终是最好的方法. 不幸的是,许都知道这个道理,但总是想走所谓的捷径. 如果您是刚刚开始学习编程的中学生,或者是刚刚进入计算机e68a84e8a2ade799bee5baa6e79fa5e9819331333236373234大学的本科生,或者您是决心在计算机领域取得一些成就的初学者,则您必须渴望知道学习计算机技术,我应该从哪里开始.

我的建议是: 数学,英语,C语言.

我不再需要强调数学和英语的重要性. 您可以从幼儿园学习. 无论您是否在学习计算机,都请始终将它们放在最重要的位置.

为什么C如此重要?让我们从学习方法开始. 没有我们自己的实践,本书中所描述的东西很难被消化和吸收. 计算机组成原理解释了浮点数的格式. 如果我们可以看到并分析内存或寄存器中浮点数的表示形式,那么它比简单的书面演讲要强一千倍;数据结构和算法似乎很困难. 实施本书中的示例,然后完成练习. 您只需要完成一本好书. 您也可以成为算法专家;操作系统的原理不只是原理. 只有进行一些内核实验,您才能真正有深刻的理解. 有许多新潮的技术,例如JavaEE,PHP,Ajax,.NET等. 许多大师只需要很短的时间就可以学习这些技术. 不用说,它们绝对是C语言的大师. C语言几乎是所有计算机技术(包括各种计算机基本理论)的通用工具. 如果没有掌握C语言的决心,就不要参与计算机领域.

c语言使用系统,使用C语言入门_第1张图片

为什么C语言不是C ++而不是Java?因为C语言是最简单的. 您需要掌握一种语言工具,但是也许您不需要很多概念,例如“面向对象”,“模板”,“函数重载”等等. C语言足够底层,非常非常接近计算机的基础结构,不会让您迷失在广阔的概念海洋中. 除了“指针”之外,C语言也没有任何实际困难,“指针”恰恰是理解计算机底层结构本质的关键.

因此,初学者不必考虑应该学习什么. 掌握C语言后,您将知道下一步. 如果您对操作系统内部感兴趣,可以尝试研究Unix内核. 除了C语言外,您还需要一些汇编语言和保护模式方面的知识. 如果您对算法感兴趣,那么恭喜您,C语言就足够用了;如果您对Windows编程感兴趣,请看“ Windows编程”,作者明确告诉您“只需要C语言基础”;如果您对任何其他语言都感兴趣,请继续学习,但是仍然建议您首先学习C ++,因为您需要一些“面向对象”的知识.

学习C并非一朝一夕的事,但掌握它并不需要十年. 如何以最低的成本学习和掌握C语言是本文的主题. 请注意,即使“最低价格”也绝不是捷径,而是最短的时间获得最大的收益,也意味着您需要经历一个艰难的过程.

首先,读一本好书,否则最好不要读

所有初学者都面临的第一个问题是: 如何选择教材. 一个好的开始是成功的一半. 选择一本优秀的教科书是通过一半的努力获得两倍的结果的关键因素. 不幸的是,学校通常会帮助您指定一本非常糟糕的C语言教科书. 幸运的是,您可以再次选择.

c语言使用系统,使用C语言入门_第2张图片

谭浩强教授发表了《 C语言编程》,据说发行量超过400万. 据我所知,许多学校都将这本书推荐为C语言教科书. 虽然我的名字(Tan Haoyu)与教授仅相距一个字,但我下定决心要砍掉他的书. 本书不是为计算机而写的,而是为其他需要参加计算机的写的. 本书的主要缺点是: 示例程序非常不,无法教会您编程应掌握的思维方式;程序的样式很糟糕,这会使您养成编写代码的习惯. 错误太多,本书指出了数百个错误,包括许多关键的概念错误. 好吧,我不想对这本书说太多. 如果您有兴趣,可以百度: )

Kernighan和Ritchie的“ C编程语言”(“ C编程语言”的中文翻译)可以称为经典中的经典,但是旧版本的许多内容已经过时,与当前的标准C语言相去甚远,大家一定要阅读最新版本,否则最好不要阅读. 此外,即使是最经典,最权威的书,也无法涵盖所有​​内容,因此有必要始终准备一本“ C语言参考手册”. “ C语言参考手册”是“ C参考手册”,是对C语言标准的详细说明,包括大多数C标准库功能的详细信息,可以被视为最佳的标准C语言工具书. 顺便说一下,最新的“ C编程语言”是根据C89标准进行修订的,而“ C语言参考手册”描述了C99标准. 两者之间可能存在一些差异. 建议根据C99标准进行研究. 还有一个“ C和指针”,这也相当不错. 英文名称是“ Pointers on C”. 它强调了指针的重要性,这是本书的特色. 但是这本书不太适合初学者. 如果您曾经学习过C语言,则有一些C语言的基础知识,但是它不是很扎实,那么您可以尝试这本书. 我相信,只要您了解指针,C语言就不再神秘.

如果您已读完C语言教科书并想进一步学习,则必须阅读两本书. 首先是《 C陷阱与陷阱》(中文翻译为《 C陷阱与缺陷》),这本非常薄的小册子,内容非常非常有趣. 应当指出,这本书是20多年前编写的,书中提到的C语言的许多缺陷已经得到改善,但是能够理解一些历史并不是一件坏事. 然后,您可以挑战“专家C编程”(中文翻译为“ C专家编程”),这本书就是它的名字,这本书相当困难,一旦您仔细阅读并能完全理解,就可以放心地写在简历上了”精通C语言”.

请记住一个原则,不要阅读您不了解的书,这是浪费生命. 如果您不理解,那么您肯定缺少一些必要的基础知识. 此时,您应该仔细分析需要添加的内容,然后去书店查找有关这些内容的书. 如果您补充了基础知识,然后回头学习,将会更加有效.

第二,Unix / Linux或Windows,这是一个大问题

c语言使用系统,使用C语言入门_第3张图片

不同的编程环境将创建具有不同思维方式的程序员. Windows程序员大多依赖集成开发环境,例如Visual Studio,而Unix程序员则更喜欢Makefile和控制台. 显然,集成开发环境更容易上手. 要在Windows上学习C语言,只需按几个Visutal C ++工具栏基本按钮即可开始编写Hello,World!,而在Unix下,则需要一些控制台操作基础知识. 有人可能会认为Unix环境更加简洁,但是习惯的力量却很大,每个人都熟悉Windows的基本操作,并且安装Unix系统以学习C语言有点不经济.

对于只了解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之类的东西可以使TC 2.0编译32位程序,但这就是太复杂了.

完成C语言教科书后,必须转向Unix平台才能继续学习. 几乎所有高级C语言课程都基于Unix平台(例如“ C Expert Programming”). 转换过程很痛苦,您需要面对各种复杂的命令,这与Windows平台上的思维方式完全不同,但是这种痛苦是值得的. Unix和C是共生的,Unix的思维方式和习惯更符合C语言. 在Unix下,您可以找到无数优秀的源代码供您阅读,可以轻松地查看库函数的手册,还可以看到最佳的代码样式(说到代码样式,我将详细写一篇特别的文章. ).

归结为一句话: 初学者使用C语言,建议使用Windows系统和集成开发环境,当准备迈向“大师”时,请首先转向Unix平台.

c语言使用系统,使用C语言入门_第4张图片

三,一切准备就绪,你是东风

已选择该书,并且环境配置已完成. 据说一切都准备好了,但是你要付出自己的努力. 请从本书的序言开始,并仔细阅读手头的教科书. 许喜欢直接从第一章开始读这本书. 这是错误的方法. 序言是作者对整本书的总体介绍. 作者通常会告诉您成功阅读本书所需的基础,这可以帮助您测试您是否具备基本知识. 阅读序言之后,您还应该浏览目录以了解本书的整体结构,并为自己安排学习计划.

学习C语言,您必须注意每个细节. 本书中的示例代码必须自己删除. 编译和执行的输出与本书中的输出相同. 如果不一致,则必须仔细查找原因. . 书中有一些示例,我必须“创建”一些示例. 例如,在学习运算符的优先级时,您可以编写几个相同的表达式,并在不同的位置添加括号以查看不同的行为. ,例如* p ++和(* p)++,以及a = b == c,(a = b)== c和a =(b == c),等等. 并仔细地分类并保存了转换后的示例以及我自己的“创建”示例,并在源代码中写了一个简短的注释以说明该示例的意图.

这些示例后面是练习. 我建议初学者独立进行所有练习,然后比较答案的代码以查看自己的代码中是否有任何不足之处,然后尝试修改自己的代码. 许没有注意练习,这是一个很大的错误,因为作者通常在练习中解释一些重要的事实

也许您认为这太慢了,但事实并非如此. 您不必回头认真地学习,并且会发现您在以后学习之前没有弄清楚. 一般来说,阅读完整本书后,您应该完成数千行甚至数万行代码,无论是从书本中原封不动地复制它,还是自己心血来潮,这都是以后继续学习的财富. 以我自己的示例为例,在阅读“ Windows Core编程”时(我只阅读了3/4的内容),除了复制书中的代码外,我自己也写了许多示例,总共5574行(使用Unix))下的wc工具统计信息,过了几天,我不记得Windows系统编程了,但是只花了几分钟就可以看到前面的代码,这将再次变得很清楚. 这就是为什么所谓的良好记忆不如不良书写的原因.

仔细阅读,仔细复制源代码,独立完成练习和进一步的实验,最后让所有代码变成您自己的经验和财富,这绝对是艰苦的工作c语言入门,并且绝对有效. 当然,此方法仅适用于需要熟练的学习技术. 如果您不学习C语言,则需要分析具体情况.

在撰写本文的最后,有一个非常非常重要的要点没有提到-代码样式. 从一开始,您就必须强迫自己模仿最佳的代码样式. 因为代码风格太重要且内容太多,所以我将使用一篇专门的文章对其进行详细讨论. 请注意“程序员之路-关于代码风格”.

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/jisuanjixue/article-214923-1.html

你可能感兴趣的:(c语言使用系统)