在 Ubuntu 下编写 C++
在 Ubuntu 上面编写 C++,本章节内容主要介绍在 Ubuntu 在终端窗口下使用 vi/vim 编辑一
个 C++源文件。通过编写最简单的示例“Hello,World!”。带领大家学习如何在 Ubuntu 终端下编
辑和编译 C++。这里要求大家会在 Ubuntu 上使用 vi/vim,也就是要求大家有一点 Ubuntu 入门
的基础。如果没有这些基础也是可以拷贝 C++的代码到 Windows 上使用像 Dev-C++这种轻量级
C/C++ 集成开发环境(IDE)进行编写和编译。
C++简介
C++ (c plus plus)是一种静态类型的、编译式的、通用的、大小写敏感的、不规则的编程
语言,支持过程化编程、面向对象编程和泛型编程。C++ 被认为是一种中级语言,它综合了高
级语言和低级语言的特点。C++ 是由 Bjarne Stroustrup 于 1979 年在新泽西州美利山贝尔实验
室开始设计开发的。C++ 进一步扩充和完善了 C 语言,最初命名为带类的 C,后来在 1983 年
更名为 C++。C++ 是 C 的一个超集,事实上,任何合法的 C 程序都是合法的 C++ 程序。
截止 2020 年,在 2017 年发布 C++17,已经是第五个 C++标准了。我们也见过或者听过 C++98,
这样的 C++标准,也就是 1998 年发布的 C++,所以叫 C++98,是 C++的第一个标准。
学习 C++我们要理解概念,而不是深究语言技术细节。我们只要带着第二章的 C++基础概念,学习 Qt 或者写 C++会有一定的帮助
C++环境设置
为了写这份教程,作者也是从新装了一个 Ubuntu18.04。从头搭建环境。我们先配置软件源
的服务器地址为阿里云的地址。这样我们可以从国内去获取软件源,下载速度会更快。
我们要在 Ubuntu 编写 C++程序,那么需要有能编写代码的文本编辑和 C++编译器。在新
装的 Ubuntu 环境里,编译 C 语言的 GCC 没有安装,编译 C++的 G++也没有安装。执行下面的
执指令安装编译 C 语言和 C++的环境。
sudo apt-get install gcc g++
sudo apt-get install lsb-core lib32stdc++6 // 安装其他库
安装完成后,可以使用下面的指令来查看安装的 gcc 和 g++的版本。
g++ -v
gcc -v
编写一个简单的 C++程序
在终端输入下面的指令,首先我们创建一个 C++目录,然后使用 cd 指令进入 C++目录。
再创建01_hello_world目录,进入01_hello_world目录,然后使用vi指令编辑01_hello_world.cpp。
mkdir C++ // 创建一个 C++目录。
cd C++ // 进入创建的 C++目录。
mkdir 01_hello_world // 创建一个 01_hello_world 目录
cd 01_hello_world // 进入 01_hello_world 目录下。
vi 01_hello_world.cpp // 编辑 cpp 文件,拷贝下文的内容
1 #include
2 using namespace std;
3 int main()
4 {
5 cout
第 1 行,C++ 语言定义了一些头文件,这些头文件包含了程序中必需的或有用的信息。上
面这段程序中,包含了头文件 。
第 2 行,using namespace std; 告诉编译器使用 std 命名空间。命名空间是 C++ 中一个相
对新的概念。其中 std 就是 C++里的标准命名空间,也就是标准库里写好的了,我们可以直接
调用。
第 3 行,int main() 是主函数,程序从这里开始执行。
第 5 行,cout 是运算符,endl 是换行语句。
第 6 行,return 0; 终止 main( )函数,并向调用进程返回
执行下面的语句进行编译和运行这个简单的 C++程序。
g++ 01_hello_world.cpp -o 01_hello_world // 使用 g++编译。-o 后面加的是输出的目标文件。
./01_hello_world // 在终端下执行,打印”Hello, World!”并换行。
我们可以拓展一下,如何输出多行。可以像下面一样无限加下去。其中我们发现打印了第一个 Hello,world!后也换行了,因为使用了“n”。C++中可以使用 C 语言的语句,C++是 C 语言的超集。
1 #include
2 using namespace std;
3 int main()
4 {
5 cout
第 5 行,我们在里面再加用“
文章来源于互联网
原文标题:在 Ubuntu 下编写 C++
原文地址:https://blog.csdn.net/qq_42700289/article/details/129431550