简介
在本实验中,你将学习如何在 Linux 环境中使用 g++ 编译器编译和运行 C++ 程序。你将从一个简单的 C++ 程序开始,然后使用 g++ 编译器构建可执行文件,最后运行该程序。此外,你还将探索更高级的 C++ 开发任务,例如编译多个源文件、使用编译器标志以及管理 C++ 项目结构。本实验涵盖了在 Linux 平台上进行 C++ 开发的基本技能。
本实验提供了逐步指导,帮助你使用 g++ 编译器进行 C++ 开发,包括在 Linux 文件系统中管理 C++ 代码。通过动手实践,你将掌握在 Linux 环境中有效编译和运行 C++ 程序所需的知识。
在 Linux 中编译和运行 C++ 程序
在这一步中,你将学习如何在 Linux 环境中编译和运行 C++ 程序。我们将从一个简单的 C++ 程序开始,然后使用 g++ 编译器构建可执行文件,最后运行该程序。
首先,让我们在 ~/project 目录下创建一个名为 hello.cpp 的 C++ 文件:
cd ~/project
nano hello.cpp
在 nano 编辑器中,添加以下 C++ 代码:
#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
return 0;
}
保存文件并退出 nano 编辑器。
接下来,我们将使用 g++ 编译器从 hello.cpp 文件构建可执行文件:
g++ -o hello hello.cpp
此命令编译 hello.cpp 文件并生成一个名为 hello 的可执行文件。
示例输出:
现在,让我们运行编译后的程序:
./hello
这将执行 hello 程序并输出消息 "Hello, World!"。
示例输出:
Hello, World!
恭喜!你已成功在 Linux 环境中编译并运行了一个 C++ 程序。
使用 g++ 编译器进行 C++ 开发
在这一步中,你将学习如何利用 g++ 编译器完成更高级的 C++ 开发任务,例如编译多个源文件、使用编译器标志以及管理 C++ 项目结构。
让我们从一个包含多个源文件的简单 C++ 项目开始。首先,为项目创建一个新目录:
cd ~/project
mkdir cpp-project
cd cpp-project
接下来,在 cpp-project 目录中创建两个 C++ 源文件 main.cpp 和 utils.cpp:
nano main.cpp
在 main.cpp 文件中,添加以下代码:
#include "utils.h"
int main() {
printMessage();
return 0;
}
然后,创建 utils.cpp 文件:
nano utils.cpp
在 utils.cpp 文件中,添加以下代码:
#include "utils.h"
void printMessage() {
std::cout << "This is a utility function." << std::endl;
}
最后,创建 utils.h 头文件:
nano utils.h
在 utils.h 文件中,添加以下代码:
#ifndef UTILS_H
#define UTILS_H
#include <iostream>
void printMessage();
#endif
现在,让我们使用 g++ 编译器编译项目:
g++ -o app main.cpp utils.cpp
此命令编译 main.cpp 和 utils.cpp 文件,并生成一个名为 app 的可执行文件。
示例输出:
要运行编译后的程序,请使用以下命令:
./app
这将执行 app 程序并输出消息 "This is a utility function."。
示例输出:
This is a utility function.
在这一步中,你学习了如何:
- 创建一个包含多个源文件的简单 C++ 项目
- 使用
g++编译器编译项目 - 运行编译后的 C++ 程序
使用 Linux 文件系统管理 C++ 代码
在这一步中,你将学习如何使用 Linux 文件系统管理你的 C++ 代码。我们将探索各种文件操作,例如创建、移动和删除文件及目录,这些操作对于组织和维护你的 C++ 项目至关重要。
首先,为你的 C++ 项目创建一个新目录:
cd ~/project
mkdir cpp-project
cd cpp-project
接下来,在 cpp-project 目录中创建一个名为 main.cpp 的 C++ 文件:
nano main.cpp
在 main.cpp 文件中,添加以下代码:
#include <iostream>
int main() {
std::cout << "Hello, C++ on Linux!" << std::endl;
return 0;
}
保存文件并退出 nano 编辑器。
然后,使用 g++ 编译器编译 main.cpp 文件:
g++ -o app main.cpp
此命令编译 main.cpp 文件并生成一个名为 app 的可执行文件。
示例输出:
现在,运行编译后的程序:
./app
这将执行 app 程序并输出消息 "Hello, C++ on Linux!"。
示例输出:
Hello, C++ on Linux!
为了演示文件管理,让我们为项目的源文件创建一个新目录:
mkdir src
mv main.cpp src/
这将创建一个新的 src 目录,并将 main.cpp 文件移动到其中。
同时,为项目的构建产物创建一个新目录:
mkdir build
mv app build/
这将创建一个新的 build 目录,并将 app 可执行文件移动到其中。
最后,删除 build 目录及其内容:
rm -rf build
此命令将删除 build 目录及其所有内容。
在这一步中,你学习了如何:
- 在 Linux 文件系统中创建和导航目录
- 创建、移动和删除 C++ 源文件
- 编译 C++ 代码并管理生成的可执行文件
- 使用目录组织你的 C++ 项目结构
总结
在本实验中,你学习了如何在 Linux 环境中使用 g++ 编译器编译和运行 C++ 程序。你创建了一个简单的 C++ 程序,编译它并执行生成的可执行文件。此外,你还探索了更高级的 C++ 开发任务,例如编译多个源文件、使用编译器标志以及管理 C++ 项目结构。这些技能对于在 Linux 环境中开发和维护复杂的 C++ 应用程序至关重要。



