《C语言编程初学者指南》一1.7 创建并运行第一个C程序

本节书摘来自异步社区《C语言编程初学者指南》一书中的第1章,第1.7节,作者【美】Keith Davenport(达文波特) , M1ichael Vine(维恩),更多章节内容可以访问云栖社区“异步社区”公众号查看

1.7 创建并运行第一个C程序

gcc编译器是一个ANSI标准编译器。一个C程序要经过很多的步骤,才能变为一个可运行或执行的程序。gcc编译器为你执行了很多的任务,其中最重要的任务包括以下几个:

预处理程序代码,并查找各种指令;
在适当的时候,生成错误代码和消息;
将程序代码编译成目标代码,并将其临时存储在硬盘上;
将任何必需的库链接到目标代码,创建一个可执行文件,并将其存储到硬盘上。
提示
 

ANSI是American National Standards Institute(美国国家标准研究院)的缩写。ANSI的一般目标是,为使用信息系统的人们提供计算标准。
在创建和保存C程序的时候,使用.c扩展名。这个扩展名是用C创建的程序的标准命名惯例。要创建一个新的C程序,从Windows下运行Notepad这样的一个文本编辑器,或者像下面这样使用nano或Vim:

nano hello.c 
vim hello.c

技巧
 

nano是另一款常用的基于UNIX的文本编辑器,也是Cygwin软件包所附带的文本编辑器。从最终用户的角度来看,它使用起来比Vim更为直观和容易。但是,它确实不像Vim一样拥有那么多功能。尽管namo和其他的文本编辑器并不是安装Cygwin时候的默认选项,但是在安装的时候,你可以通过Editors区域下的Select Packages窗口来进行选择。
前面的两条命令,都会打开编辑器并创建一个名为hello.c的新文件。一旦使用nano或Vim这样的编辑器创建并保存了C程序,你就已经准备好使用gcc编译程序了。

从Cygwin UNIX shell中,输入如下内容:

gcc hello.c

如果程序成功地编译了,gcc会创建一个名为a.exe的、新的可执行文件。

注意
 

如果没有成功地运行编译后的程序,验证一下%systemdrive%: cygwinbin(其中%systemdrive%是安装Cygwin的驱动器)目录结构已经成功地添加到系统的路径变量中了。
a.exe是这个版本的gcc所编译的所有C程序的默认的名称。如果你是在UNIX操作系统上的一个不同的gcc版本下编程,文件名可能是a.out。

每次使用gcc编译一个C程序的时候,它都会覆盖以前的a.exe文件中包含的数据。可以通过给gcc一个选项,来为可执行文件指定一个唯一的名称,从而改正这一点。指定一个具有唯一的名称的可执行文件的语法如下:

gcc programName –o executableName

关键字programName是你的C程序的名称,-o(字母o)选项告诉gcc,你将要指定一个唯一的编译名称,而executableName关键字是想要的输出文件的名称。如下是使用实际的文件名的另一个示例:

gcc hello.c  -o hello.exe

在UNIX命令提示符输入如下的命令,可以访问gcc的man页面(用于UNIX命令的在线手册),并找到关于gcc的大量信息。

man gcc
要通过Cygwin U
N```  
IX命令提示符来执行程序,输入如下内容:

./hello

和Windows不同,当尝试执行一个程序的时候,UNIX shell不会默认在当前目录下查看。通过在编译后的程序之前带上一个./字符序列,我们告诉UNIX shell在当前目录下查找编译后的C程序,在这个例子中,当前目录就是hello目录。

如果你使用一个Microsoft Windows系统,也可以从基于Microsoft的命令行shell(通常称之为DOS命令提示符)来执行程序,只要直接输入程序的名称就行了(假设你位于工作目录之中)。
上一篇:Microsoft Azure News(1) 新的数据中心Japan East, Japan West and Brazil South


下一篇:让 SaaS 公司的客户不再流失的 8 招