企业网站建设

建站知识

今日已发布信息: 429850
累计注册用户: 97834386

第一局部第二课:工欲善其事,必先利其器

第一部分第 工欲善其事必先利其 语言编程 需要什么

概述: 编程的前辈和大牛太多,新技术永远比你学习速度快地涌现,所以永远保持一颗初心,不得瑟。凡事多感恩,一方面感谢帮助过我们的人,也感谢给我们逆耳忠言的人,也要感谢陪伴我们的电脑和开源社区等。其实,我一直觉得程序员是一个不错的职业,虽然可能程序员有不少职业病,例如话少,宅,呆萌,害羞等,



内容简介

1、课程大纲

2、第一部分第二课:工欲善其事,必先利其器

3、第一部分第三课预告:你的第一个程序


课程大纲


我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案。还会带大家用C语言编写三个游戏。



C语言编程基础知识


什么是编程?

工欲善其事,必先利其器

你的第一个程序

变量的世界

运算符

条件表达式

循环语句

实战:第一个C语言小游戏

函数

练习题

习作:完善第一个C语言小游戏


C语言高级技术


模块化编程

进击的指针,C语言王牌

数组

字符串

预处理

创建你自己的变量类型

文件读写

动态分配

实战:“悬挂小人”游戏

练习题

习作:用自己的语言解释指针


用基于C语言的SDL库开发2D游戏


安装SDL

创建窗口和画布

显示图像

事件处理

实战:“超级玛丽推箱子”游戏

掌握时间的使用

用SDL_ttf编辑文字

用FMOD控制声音

实战:可视化的声音谱线

练习题


数据结构


链表

堆,栈和队列

哈希表

练习题



第一部分第二课:工欲善其事,必先利其器


昨天的课,反响比较好,超乎了我的想象。激动,很感恩。


昨天说了程序员需要具备三个特质:

耐心,逻辑,冷静。

我突然感觉到还需要第四大特质---谦虚,相当重要。因为你只会发现你越学习越觉得不足,外面的世界太大了,编程的前辈和大牛太多,新技术永远比你学习速度快地涌现,所以永远保持一颗初心,不得瑟。

凡事多感恩,一方面感谢帮助过我们的人,也感谢给我们逆耳忠言的人,也要感谢陪伴我们的电脑和开源社区等。


其实,我一直觉得程序员是一个不错的职业,虽然可能程序员有不少职业病,例如话少,宅,呆萌,害羞等,

但是程序员比较单纯,这是跟与我们朝夕相伴的电脑分不开的。因为机器不会说假话,1就是1,0就是0,绝对忠诚,高效和不变心(芯)。所以,和机器长期打交道之后的程序员也变得不是那么有心机,感觉萌萌哒。


之前网上有一篇文章,说找程序员做男女朋友的好处,挺有意思。

跟公司里几个同事相处下来也发现,程序员真的都很有趣,很可爱,很童真。


只是在国内程序员还不是太被重视,但我相信随着中国的强大,会改观的。

 

  合肥免费网站设计  机构安全检测   今日推荐免费建站   分类信息   西安网站建设公司

 


好了言归正传。在上一课《什么是编程》后,这一课我们就正式进入C语言编程的正题了。


这一课我们回答以下问题:

我们需要什么软件来编程呢?


这一课大家可以很轻松地度过,因为没有什么难点。我们会花点时间来认识一些常用的编程软件。

应该好好享受这一课,因为下一课开始我们就要一起写程序了,所以该喝咖啡的喝咖啡,该吃烤鸡的吃烤鸡,休息好了,才能上阵。


编程的必要工具


依你看,什么软件对编程来说是必要的呢?如果你认真学了上一课,那你至少可以说出一种吧。


对了,就是编译器。这个重要的程序可以把你的源代码(用高级语言如C语言写的指令)转换成电脑可以理解的二进制码(只包含0和1的,类似 01100110001111011101010...)。

上一课我们也提了一下,每种高级语言都有对应的编译器(当然对于Python这样的解释性语言,就不需要编译了),光是C语言的编译器就有很多。比较常用的有GCC(GNU C Compiler。GNU是国际著名的自由软件基金会,GNU是“GNU is Not Unix” (GNU不是Unix)的递归缩写法,老外总是那么顽皮,起名字也喜欢整一些编程的知识,比如Linux就是“Linux Is Not Unix”(Linux不是Unix)的递归。要不就用很多动物的名字或图标,特别好玩)。


除了编译器,我们还需要什么工具呢?

就不卖关子了,下面列出编程的基本工具:


文本编辑器:用来写源代码的工具。理论上Windows操作系统的记事本或者Linux下的VI编辑器都可以作为文本编辑器来使用。但是,最好还是用一些更高级点的文本编辑器,比如可以支持代码高亮显示,方便你在代码间跳转等。个人非常推荐的文本编辑器是Emacs,真的非常强,跨平台(苹果Mac,Windows,Linux等),自由定制,各种快捷键组合,收发邮件,看视频,浏览网页,浏览PDF,没有你做不到,只有想不到(略有夸张...),可以让你编辑代码非常高效。我之前使用的是VIM,也是很不错的,但是后来用了Emacs,感觉还是更喜欢Emacs一些。当然这见仁见智。还有一个文本编辑器:Notepad++也是挺好的,经过配置和安装一些插件,可以很强大,不过貌似没有苹果电脑版本。


编译器:已经提过了,用来转换(或叫编译)你的源代码成为二进制码


调试器:Debugger,用来跟踪、发现程序里的错误的工具。这里出现一个新名词,调试(Debug)。bug是英语臭虫,虫子的意思,de在英语里是一个表示“分离,除掉”的前缀,所以Debug的意思就是除臭虫。一般把程序里的错误或者缺陷叫做bug(臭虫),据说是因为传奇女程序员Grace Hopper(格莱斯.霍普)有一次在MARK II计算机(就是那种早期的比较庞大的电脑)中发现了一只飞蛾,这只飞蛾导致了这台电脑死机(夹在电脑里的继电器之间),霍普用镊子把飞蛾夹出来,用透明胶布贴到笔记本上,并注明“第一个发现虫子(bug)的实例”。从此,人们就沿用了这个称呼,用debug表示排除程序错误的行为。现在霍普的笔记本,连同那只呆萌的飞蛾,陈列在美国历史博物馆里。


霍普的笔记本和光荣载入历史的飞蛾


当然,如果你有冒险精神,喜欢挑战,也可以不用调试器(通过一些小技巧也是可以自己找到错误所在的)。但是,我想一般来说你是会需要调试器的。


所以,我们就有两个选择了:

分开使用文本编辑器,编译器和调试器这三种工具。虽然复杂一些,但是也行得通。特别在Linux环境下,不少程序员还是喜欢用这种方式来编程,可能不是装,要的就是这个feel,倍爽。

使用一种软件,这种软件集合了这三种工具的功能。这种软件被称为IDE(Integrated Development Environment 集成开发环境)。


一开始你可能会难以抉择,到底用哪种呢?即使选择了用IDE,也会纠结到底用哪一个IDE好呢。其实我们可以肯定的是:不论你选择哪种工具,你都可以编写你想要的程序。只是效率,个人习惯和特定平台要求不同罢了。


个人浅见:

如果刚接触C语言,尽量在Linux的命令行里学习C语言编程。一开始不要怎么用IDE。因为IDE做得太好了,都有提示,代码自动补全,自动帮你添加代码,你就不能学到很多,也记不牢。等编程水平好了一些,再用IDE不迟,那个时候IDE可以提高你的编程效率。一开始用emacs或者vim编写C语言,用GCC编译C语言,用GDB(GNU Debugger)调试C语言,是不错的选择。


当然了,我们还是会花比较多的篇幅介绍几个常用的IDE。


选择你的IDE


我们觉得有必要向大家展示几个最著名的IDE,这几个都是免费的(只买对的,不选贵的)


Code::Blocks:个人比较喜欢的一款IDE,免费,开源,跨平台。在之后的课程里,我们会用Code::Blocks来做开发,因为Code::Blocks的开发环境搭建起来太快了,不需要什么配置。

可以运行在苹果Mac,Windows,Linux等大多数操作系统上


Visual Studio:基础版本是收费的。但是幸好有一个Visual Studio Express的版本是免费的。VS功能很完备,而且调试器很强大。

只能运行在Windows操作系统上


Xcode:作为苹果的当家IDE,不得不说Xcode真的做得太棒了。可以用来开发基本的小程序,也可以编写iPhone和iPad的App(模拟器速度超快),和智能手表应用,还可以和其他如Unity 3D引擎配合来编写游戏。

只能运行在苹果Mac OS X操作系统上



Code::Blocks

Code::Blocks是一款很不错的IDE,不过目前只有英文版,当然网上也有汉化版本,不过既然学编程,就尽量把英语这关过了,也不需要太厉害的英语,基础就好。毕竟汉化版有的翻译不到位,可能会影响使用。而且好的编程资源基本都是英语的。


下载Code::Blocks

先去Code::Blocks的官方下载页面: http://www.codeblocks.org/downloads/binaries

Windows用户请下载 .exe 的文件,请注意要下载名字里有 mingw 的那个(codeblocks-13.12mingw-setup.exe),因为如果没有mingw这几个字母的版本不包含编译器,就会很麻烦。

Linux用户请下载对应你的操作系统的版本

苹果Mac用户请下载 CodeBlocks-13.12-mac.zip



安装运行Code::Blocks

Code::Blocks的安装太简单了,就跟安装QQ没什么区别,一路默认到底就好。

安装完之后双击运行,你可以看到如下图的界面



上图中标注了四个区域:

工具栏:有很多按钮,但只有几个是真正我们时常用到的。

项目文件列表区:左边的栏里面显示了你的项目的所有文件

主界面:写代码的地方

通知栏:会看到运行的错误,编译的问题等等


如何来创建一个C语言的基本的控制台应用程序呢?


首先到菜单里,File -> New -> Project,会打开如下的窗口

http://hf.kvov.com.cn/jzxx43232.html