如何学习 C++ 编程?
所以你决定学习如何用 C++ 编程,但不知道从哪里开始。这里有一个关于如何开始的简要概述。
获取一个 C++ 编译器
这是你在开始学习 C++ 编程之前想要做的第一步。所有主要的操作系统平台都有很好的免费 C++ 编译器可用。下载一个适合你平台的编译器,或者你可以在 www.tutorialspoint.com/compile_cpp_online.php 上使用 tutorialspoint.com 的在线编译器。
GCC − GCC 是 GNU 编译器集合,基本上是由 GNU 创建的一系列不同编译器的集合。你可以从 http://gcc.gnu.org/ 下载并安装此编译器。
Clang − Clang 是 LLVM 社区发布的编译器集合。它在所有平台上都可用,你可以在 https://clang.llvm.net.cn/get_started.html 上下载并找到安装说明。
Visual C++ 2017 Community − 这是一个由微软为 Windows 构建的免费 C++ 编译器。你可以从 www.visualstudio.com/vs/cplusplus/ 下载并安装此编译器。
编写一个 C++ 程序
现在你已经安装了一个编译器,是时候编写一个 C++ 程序了。让我们从编程示例的缩影开始,即“Hello World”程序。在本例中,我们将使用 C++ 将“Hello World”打印到屏幕上。创建一个名为 hello.cpp 的新文件,并将以下代码写入其中:
#include<iostream>
int main() {
std::cout << "Hello World\n";
}
让我们剖析一下这个程序。
第 1 行 − 我们从 #include<iostream> 行开始,这实质上是告诉编译器将 iostream 文件(用于管理输入和输出流)中的代码复制并粘贴到我们的源文件中。头文件 iostream 允许执行标准输入和输出操作,例如将此程序的输出(Hello World)写入屏幕。以井号 (#) 开头的行是由称为预处理器的程序读取和解释的指令。
第 2 行 − 空行:空行对程序没有影响。
第 3 行 − 然后我们声明一个名为 main 的函数,其返回类型为 int。main() 是我们程序的入口点。每当我们运行一个 C++ 程序时,我们都从 main 函数开始,并从该函数中的第一行开始执行,并一直执行每一行,直到到达末尾。我们在这里使用花括号 ({) 开始一个块。这标志着 main 函数定义的开始,而第 5 行的花括号 (}) 则标志着它的结束。这些括号之间的所有语句都是函数体,定义了调用 main 时会发生什么。
第 4 行 −
std::cout << "Hello World\n";
此行是一个 C++ 语句。此语句包含三个部分:首先是 std::cout,它标识标准控制台输出设备。其次是插入运算符 <<,它表示后面跟着的内容将插入到 std::cout 中。最后,我们在引号中有一个句子,我们希望将其打印到屏幕上。随着我们继续学习 C++,这将变得更加清晰。
简而言之,我们为 cout 对象提供了一个字符串“Hello world\n”,以便将其打印到标准输出设备。
请注意,语句以分号 (;) 结尾。此字符标记语句的结尾。
编译程序
现在我们已经编写了程序,我们需要将其转换为处理器能够理解的语言,即二进制机器代码。我们使用第一步中安装的编译器来执行此操作。你需要打开你的终端/cmd 并使用 cd 命令导航到 hello.cpp 文件所在的位置。假设你安装了 GCC,你可以使用以下命令编译程序:
$ g++ -o hello hello.cpp
此命令表示你希望 g++ 编译器使用源文件 hello.cpp 创建一个输出文件 hello。
运行程序
现在我们已经编写了程序并编译了它,是时候运行它了!你可以使用以下命令运行程序:
$ ./hello
你将得到以下输出:
Hello world
现在你已经学习了如何开始使用 C++ 编程语言,你可以通过阅读一些关于 C++ 的材料来开始学习,例如 C++http://www.cplusplus.com/doc/tutorial/, 等。这些网站有优秀的入门指南,可以帮助你入门。
其他一些非常有用的资源是 Bjarne Stroustrup、Scott Meyers 等各种作者的书籍。你可以从《C++ 导览》开始,然后继续学习《Effective C++》等书籍。这里有一个关于 c++ 的权威书籍列表,你可以查看:https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list.
你还可以查看 C++ 标准以了解更多关于语言本身的信息。它作为草案在 ISO C++ 网站上免费提供:ISO
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP