编写了一个C++程序,如何让它运行起来呢?具体步骤取决于计算机环境和使用的C++编译器,大体如下:
- 编写源代码。
- 编译源代码。该步骤将源代码翻译为主机使用的机器语言,翻译后的文件就是目标代码(object code)。
- 将目标代码链接起来。
1.4.1 创建源代码文件
本小节讨论创建源代码文件的技巧。有些C++实现,如Microsoft Visual C++、Apple Xcode提供了集成开发环境。有些实现,如Linux的GNU C++只能处理编译和链接阶段,这时就可以用任何文本编辑器来写代码。
下表是常见C++源文件扩展名:
C++实现 | 源文件扩展名 |
---|---|
UNIX | C、cc、cxx、c |
GNU C++ | C、cc、cxx、cpp、c++ |
Digital Mars | cpp、cxx |
Borland C++ | cpp |
Watcom | cpp |
Microsoft Visual C++ | cpp、cxx、cc |
Freestyle Code Warrior | cp、cpp、cc、cxx、c++ |
1.4.2 编译、链接
编译的机理取决于实现,接下来的几节将介绍一些常见的形式。这些总结概括了基本步骤,但对于具体步骤必须查看系统文档。
- UNIX的编译、链接
调用CC命令来编译程序,如CC spiffy.C。将生成一个spiffy.o的目标代码文件。编译器自动将目标代码文件传递给系统的链接程序,最终生成a.out可执行文件。如果需要指定库,使用-lm参数:CC usingmath.C -lm。
- Linux的编译、链接
Linux上最常用的编译器是g++。例如,g++ spiffy.cxx。有些版本可能要求链接C++库:g++ spiffy.cxx -lg++。
- Windows命令行编译器
要在Windows上编译C++,需要下载Cygwin、MinGW,它们都包含了GNU C++编译器,名为g++。
- Windows编译器
Windows上常用的是Microsoft Visual C++。
- Mac OS
Apple提供了Xcode开发框架。不仅提供了IDE,还自带了两个命令行编译器g++、clang。