首页 > 编程笔记 > C++笔记 阅读:12,001

C++基本语法详解

每个 C++ 程序都有一个基本结构,C++程序的部件并不是在同一个地方。不过,这些部件总是会在程序中出现,所以学习 C++ 的第一步就是了解它们是什么。下面开始认识 C++ 的第一个程序。
// A simple C++ program
#include <iostream>
using namespace std;

int main()
{
    cout << "Programming is great fun!";
    return 0;
}
一起来逐行看一下这个程序。以下是第 1 行:

// A simple C++ program

双斜杠(//)标志着注释的开始。编译器忽略从双斜杠到行尾的所有内容。这意味着可以在该行输入任何想要的内容,编译器绝不会抱怨。虽然注释并不是必需的,但它们对程序员非常重要。大多数程序比此程序复杂得多,注释有助于解释代码的作用和意图。

第 2 行如下所示:

#include <iostream>

当某一行以 # 开头时,表示它是一个预处理器指令。预处理器在编译之前即读取程序,只执行所有以#开头的行。可以将预处理器看作是一个为编译器 “设置”源代码的程序。

#include 指令使预处理器在程序中包含另一个文件的内容。尖括号中的单词 iostream 是要包括的文件的名称。iostream 文件包含的代码允许 C++ 程序在屏幕上显示输出并从键盘读取输入。因为 cout 语句(在第 7 行)将输出打印到计算机屏幕,所以这里需要包含这个文件。其内容将被放在程序 #include 语句出现的位置。iostream 文件称为头文件,因此它应该包含在程序的头部或顶部。

第 3 行如下所示:

using namespace std;

程序通常包含具有唯一名称的各种类型的项目。后续将学习创建变量、函数和对象,它们都是必须具有名称的程序实体的示例。C++ 使用命名空间来组织程序实体的名称。该语句使用"namespace std;”声明该程序将访问名称为 std 的命名空间的实体(没错,命名空间都有自己的名称)。程序需要访问 std 命名空间,因为 iostream 文件创建的每个名称都是该命名空间的一部分。为了使程序能够使用 iostream 中的实体,它必须具有访问 std 命名空间的权限。

第 5 行如下所示:

int main()

这标志着函数的开始。函数可以被认为是一个或多个具有名称的编程语句的组。此函数的名称为 main,该名称后面的一对括号表示它是一个函数。int 意为“integer”,表示该函数在执行完毕后将返回给操作系统一个整数值。

虽然大多数 C++ 程序都有多个函数,但每个 C++ 程序都必须有一个名为 main 的函数。这是程序的起点。如果在阅读其他人的程序时,想要找到其起始位置,那么只需要找到一个叫 main 的函数即可。

注意,C++ 是区分大小写的语言。这意味着它将大写字母视为与小写字母完全不同的字符。在 C++ 中,函数 main 的名称必须全部使用小写字母来写。换句话说,C++并不认为“main”与 “Main” 或 “MAIN” 相同。

第 6 行仅包含一个单独的独立字符:

{

它被称为左大括号或开放大括号,它与函数 main 的开头相关联。构成函数的所有语句都包含在一组大括号中。如果从开放大括号看下面的第 3 行,会发现有封闭的大括号。两个大括号之间的一切都是函数 main 的内容。

警告,请确保程序中的每个开放大括号都有一个封闭括号。

在开放大括号之后,可以看到第 7 行中的以下语句:

cout << "Programming is great fun!";

该行将在屏幕上显示一条消息,在消息"Programming is great firn!”显示时不会有双引号。编程术语中,引号内的字符组合称为字符串常数、字符串常量或简称为字符串。

注意,这是程序中唯一能够在屏幕上打印任何内容的行。其他行,例如 #include <iostream> 和 int main(),对于程序的框架是必需的,但它们不会产生任何屏幕输出。请记住,程序是针对计算机的一组指令。如果要在屏幕上显示某些内容,则必须为该目的而使用编程语句。

在第 7 行可以看到是以分号结尾的。就像句点标志着一个句子的结尾一样,分号被用来标记 C++ 中一个完整语句的结束。但许多 C++ 代码行,如注释、预处理器指令以及函数的开始,都不是完整的语句,这些不以分号结尾。以下是一些何时使用分号的示例。

// Semicolon examples //这行是注释
# include <iostream> //这行是预处理器指令
int main()  //这行是函数开头
    cout << "Hello"; //这行是完整的语句

当以后使用 C++ 越来越久时,自然会感觉到哪里应该使用分号,而哪里不应该使用。所以现在不必担心,只关注学习程序的基本框架即可。

第 8 行如下所示:

return 0;

当程序完成运行时,将整数值 0 发送回操作系统。值 0 通常表示程序成功执行。

程序的最后一行,第 9 行包含一个封闭大括号:

}

这个大括号标志着主要功能的结束。因为 main 是程序中唯一的功能,它也标志着程序的结束。

在该示例程序中出现了几组特殊字符。表 1 简要说明了它们的使用方法。

表 1 特殊字符的使用方法
字符 名 称 说 明
// 双斜杠 标记注释的开始
# 井字号 标记预处理器指令的开始
<> 开放和封闭尖括号 与 #include 指令一起使用时包含一个文件名
() 开放和封闭括号 用于命名函数,如 int main()
{} 开放和封闭大括号 包含一组语句,如函数的内容
“” 开放和封闭引号 包含一串字符,例如要在屏幕上打印的消息
分号 标记完整的编程语句的结尾
 

编程帮,一个分享编程知识的公众号。跟着站长一起学习,每天都有进步。

通俗易懂,深入浅出,一篇文章只讲一个知识点。

文章不深奥,不需要钻研,在公交、在地铁、在厕所都可以阅读,随时随地涨姿势。

文章不涉及代码,不烧脑细胞,人人都可以学习。

当你决定关注「编程帮」,你已然超越了90%的程序员!

编程帮二维码
微信扫描二维码关注