c语言编程:我的C语言源程序
程序,只不过是人类要解决某一问题所需执行的有序步骤的集合而已。

在这里,我不想做过多的关于C语言历史的介绍,因为现在关于C语言资料在书店或者网络上随处可以找到。如果你想要详细的了解C语言的历史,请运用你的智慧运用你手中的工具去获取资源,这是任何一个想成为编程高手必经之路。
这是我们要接触的第一个C语言程序。
现在大多数有关C语言的教材所采用的第一个C语言程序用来在计算机屏幕上打印一条语句:Hello, word! 但是,我们在这里打印另一条语句:To C, or not to C: that's not a problem.
为什么呢?
在《C语言程序设计——现代方法》一书中,第一个程序所打印语句是:To C, or not to C: that is a problem. 这句话在当时确实有其价值,但现程序设计语言发展到今天,程序设计语言的数量成百上千,C语言早已不是一个重要的选择。事实上,C语言除了在某些特定的领域内仍发挥着作用,其它领域中C语言的替代语言也越来越多,所以,"To C, or not to C: that's not a problem. "
另外,一门程序设计语言不可能永远流行下去,终有一天它会退出历史的舞台。所以,我们尽量要用客观科学的态度来对待和学习C语言。
好了,现在让我们来学习我的第一个C语言程序。
|
/* ** file name : pun.c ** ** (C) 2013 Rongbing Tang ** ** This program prints a statement ** "To C, or not to C: that's not a problem." */
#include int main(void) { printf("To C, or not to C: that's not a problem.\n"); return 0; } |
上面这个C语言程序虽然简单,但是想要让它真正在计算机上运行起来,还是要做相当多的准备工作的。简单地说,一个C语言程序要经历编辑、预处理、编译、链接这四个步骤后,才能真正运行起来。其中,除了编辑这一步需要由人来完成,其它三个步骤都由C语言编译器来完成,不需要太多的人为干预。
编辑(edit) 编辑阶段,就是使用某种文本文件编辑器来编辑用C语言编写的源程序。例如上面我们的这个C语言源程序。在Windows系统中,常用的文本文件编辑器是记事本;在Linux系统中,常用的文本文件编辑器是vi或者vim。编辑阶段,通常又叫做建立。
预处理(preprocess) 在这个阶段,将源程序交给预处理器(preprocessor)来处理。预处理器有点类似于文本编辑器,其主要作用就是对源程序进行适当的处理,可以是增加一些内容,也可以是删除一些内容。经过预处理后的源程序就叫做预处理文件,预处理文件在形式上跟C语言源程序是一致的。
编译(compile) 在这个阶段,将预处理文件交给编译器(compiler)来处理。编译器将预处理文件转换成目标文件。目标文件通常是由汇编语言或者机器语言组成的目标程序。如果目标文件是由汇编语言组成的程序构成,那么这个目标文件可以叫做中间文件,然后再调用汇编语言编译器将此中间文件编译成由纯机器语言的目标文件。然而,这样的目标程序还不具备运行的条件。
链接(link) 这是最后一个准备步骤。在这个阶段,由链接器(linker)将目标文件和一些附加的文件整合在一起,这样就形成了可以执行的文件(即,可完全执行的程序)。这些附加的文件包括很多库文件,在上面这个程序中,prinf就是库文件之一。
好了,既然介绍了上面这些知识,那现在就是我们让这个程序在计算机上真正运行起来的时候了。
我使用的是32位的Windows 7系统,在源程序编辑方面,我使用超级编辑器UltraEdit-32,在编译器方面,我使用的Windows平台上的VS2010平台。
首先,建立一个名为pun文件夹,在这个文件夹中新建一个纯文本文件,然后修改其名称为pun,扩展名修改为 .c 。然后使用UltraEdit打开,将上面的C语言源程序原样输入,输入完毕后保存即可。
然后,打开VS2010,依次选择“文件”、“新建”、“从现有代码创建项目”,这时会出现一个对话框,在选择要创建的项目的类型时选择 “Visual C++”,然后点击下一步。这时会出现另一个对话框,在项目文件位置处选择“浏览”,然后在弹出的对话框中选择你创建名为pun的文件夹,然后单击“选择文件夹”,在项目名称处输入一个名称,建议项目名称跟文件夹的名字相关联。此处我
使用选择的文件夹的名作为项目名。然后单击“下一步”。在之后弹出的对话框中的项目类型处,选择“控制台应用程序项目”,再单击“完成”。
这时候,关于pun.c程序的解决方案已经建立,在VS中找到“解决方案资源管理器”,在“解决方案中‘pun’”中依次单击“pun”、“Source Files”,然后双击“pun.c”。这时候就会现实pun.c程序的内容了。
编译pun.c文件。在菜单栏中单击“生成”,在下拉菜单中单击“生成解决方案”,等待编译器编译程序。选择“生成解决方案”,VS2010的C++编译器会完成预处理、编译、链接这三个步骤,因为VS2010不直接支持建立C语言项目,所以C语言的源程序就要由第三方编辑器来完成源程序的编写。过了一段时间后(通常不会太长,但是VS的编译器的编译时间真的很长,这可能跟它内部对程序编译的处理方式有关),如果在“输出”项中出现了“成功1个... ..."的提示,则说明这个程序已经成功被编译链接成了可执行程序;如果不是,那么请仔细检查你编写的C语言源代码是否完全按照上面的程序那样书写。
执行程序。在菜单栏中单击“调试”,在下拉菜单中单击“开始执行(不调试)”即可。这时会出现一个DOS界面,在这个界面里会输出一条语句“To C, or not to C: that's not a problem.”,然后在下一行输出系统提示结束“请按任意键继续 ... ”,这时你在键盘上的任意按键操作都会结束此程序的运行。
题外话
在这里选择Windows 7系统和VS2010,是因为Windows 7 是目前的主流PC操作系统,二VS2010在编译方面的安全检查做得相当好,能帮助敢接触C语言的人比较容易的编写C语言程序。但是,我仍要提醒大家一些事。
首先,VS2010中并不包含真正的C语言编译器,而是使用的C++编译器,C++是C语言的扩展版本,C语言只是C++的一个子集。所以,想要真正学习C语言,我建议使用LINUX系统平台上的GCC编译器,这个编译器包含了一个纯C语言编译器,关于LINUX和GCC,我会在其它的文章中介绍,在这里就不做过多介绍了。
其次,编译器只是一个工具,程序设计语言也是一门工具。我们学习程序设计时,除了要掌握一门语言和这门语言的编译器外,我们更要学习如何评估这门程序设计语言的优缺点和其中的程序设计的方法和思想。工具是不断更新换代的,所以我们不能过多的依赖工具,但是为了我们的生存,我们至少要精通一门程序设计语言,并精通一个程序设计的平台。
最后,VS2010中有许多进步的程序设计思想值得我们去学习。例如,解决方案就是其中之一,但是在这里我就不会赘述了,我相信你会找到更专业的资料来学习VS2010的。
祝你在看完我的文章后能得到帮助。
练习:
1.在你的电脑上建立上面的C语言源程序,然后使用合适的编译器来编译此程序。
2.找一些专业书籍来认识C语言的起源和发展,然后对比其它语言的发展,思考C语言的未来发展。
本文来源 我爱IT技术网 http://www.52ij.com/jishu/1051.html 转载请保留链接。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
