您的位置:首页 > 编程语言 > C语言/C++

C++程序编译执行具体步骤及各大系统中的编译命令

2017-10-28 20:31 330 查看

C++程序的编译执行步骤:

1.首先是编写程序的源代码,保存在一个文件中,该文件的后缀名应为cpp,cxx,.C等(该C是大写,小写c代表是c程序,根据C++的版本不同而有一些差异,但基本都识别cpp)。该文件就是程序的源代码文件。
2.编译源代码,生成目标代码文件。编译源代码用到编译器,如g++和clang。生成的目标代码文件的后缀名是  .o  。目标代码文件里的内容是机器语言。
3.链接程序。即将目标代码与其他代码链接起来。如C++常用到的库。最后生成可执行代码或者叫可执行文件。

Linux和Windows中的编译和链接:

Linux:

Linux中最常用的编译器是g++,下面的命令是编译源代码文件main.cpp,生成可执行文件a.out。
g++ main.cpp

执行a.out可用以下命令:
./a.out

若要指定生成的可执行文件的文件名,使用下面的命令:
g++ main.cpp -o test
执行该命令后生成可执行文件test,以下命令执行该可执行文件:
./test

同时编译多个源文件:
g++ test1.cpp test2.cpp

其中需要注意的是,该命令不会保留目标代码文件main.o。因此若需要目标代码文件,可以执行以下命令:
g++ -c main.cpp

目标代码文件都是机器语言,虽然看不懂,但保留目标代码文件有个好处就是当同时编译了多个cpp文件时,此时若修改了其中的一个cpp文件,不需要重新编译全部源文件,只需编译被修改的源文件,然后将它与其他源文件的目标代码文件链接即可。
如有三个文件:main.cpp   head.cpp   head,h

main.cpp:
#include<iostream>
#include<cstdio>
#include"head.h"
using namespace std;

int main()
{
print();
printf("%d\n",sum(2,3));

return 0;
}


head.cpp:
#include<iostream>
#include"head.h"
#include<cstdio>
using namespace std;

void print()
{
printf("hello world!\n");
}

int sum(int x,int y)
{
return x+y;
}


head.h:
void print();
int sum(int x,int y);


当修改了head.cpp文件时,只需执行以下命令即可:
g++ head.cpp main.o
前提是存在main.o。

Windows:

在windows中,很多人都爱用Visual Studio这些功能完全的IDE。基本上就是一键编译运行的操作。当然上述命令在windows的命令行中也能用,其中生成的可执行文件的后缀是.exe。也可以下载免费的命令行编译器,例如Cygwin和MinGW。

参考:C++ Primer Plus
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: