程序结构介绍

程序结构介绍

程序结构介绍

本节阅读量:

C++中,最经常使用的是「语句」和「函数」。

写文章时,会将文章拆分为段落和句子。在代码组织上,「函数」类似于段落,「语句」相当于句子。

语句

「语句」是C++中最小的独立计算指令单元。大部分语句以「;」结尾。在C++中,一条语句编译后对应多条机器指令。

常用的语句类型如下:

声明语句

表达式语句

跳转语句

复合语句

选择语句

迭代语句

异常捕获块

下面是每种语句的简单例子,后面学习中会讲解语句用法。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

// 声明语句

int n = 1;

// 表达式语句

n = n + 1;

std::cout << "n = " << n << std::endl;

// 跳转语句

mylabel:

cout << n << ", ";

n--;

if (n>0) goto mylabel;

// 复合语句

{ 语句1; 语句2; 语句3; }

// 选择语句

if (x == 100) cout << "x is 100";

// 迭代语句

while (n>0) {

cout << n << ", ";

--n;

}

// 异常捕获块

try

{

throw 20;

}

catch (int e)

{

cout << "An exception occurred. Exception Nr. " << e << '\n';

}

函数及main函数

「函数」将一系列「语句」打包在一起,执行时按顺序执行其中的语句。

使用函数可以指代一系列语句,创建函数相当于创建新的指令。

main函数

每个C++程序都有一个main函数。程序启动时,顺序执行main函数中语句,直到程序结束。

编写函数是为了特定工作,例如如下「max」函数,求两数中最大数。

1

2

3

4

5

6

7

8

int max(int a, int b)

{

if (a > b)

{

return a;

}

return b;

}

使用函数有如下好处:

减少重复代码

提高程序可读性

降低程序的维护成本

在后续,使用「函数名」+「()」指代函数。例如,main()或doSomething(),而不是函数main或函数doSomething。

Hello World程序的拆解

有了语句和函数,拆解下「Hello World」程序。

1

2

3

4

5

6

7

#include

int main()

{

std::cout << "Hello World!" << std::endl;

return 0;

}

第一行是「预处理」指令,说明要使用「iostream」库。iostream是C++提供的用来读写命令行的标准库。

第五行的std::cout与std::endl就是iostream库中的功能。

如果没有这一行,编译器会报错,提示无法找到std::cout与std::endl的定义。

第二行是空行,不会被编译。程序中使用空行将不同部分隔开,以增加程序的可读性。

第三行告诉编译器,定义main函数。

第四行与第七行,标示main函数的开始与结束。

第五行是main函数的第一条语句。std::cout代表字符输出。

「«」表示将右边的内容发送给左边的对象,在这里表示输出到命令行中。

std::endl表示换行。

第六行是返回语句。程序执行完成后,该语句告诉操作系统程序已成功执行。

在大部分操作系统中,返回「0」代表程序执行成功。

语法错误

文本组成语句、函数及程序的规则,称作程序的「语法」。如同写作文时,每句话要以「。」来结尾。

只有符合C++语法的文本才能被C++编译器成功编译,否则编译器会报错。这类错误称为「语法错误」。

1

2

3

4

5

6

7

8

9

#include

int main()

{

int a;

int b;

std::cout << "Hello World!" << std::endl;

return 0

}

上面程序中,第8行结尾,少写了「;」。编译器给出如下提示:

语法错误

第9行的「}」之前少了「;」。语法错误是编程时常见的错误,编译器会明确告知错误位置,比较容易修改。

可以尝试删除程序中的任意部分,看看编译器分别给出什么样的报错。

0.5 第一个C++程序

上一节

1.1 注释

下一节

相关推荐

剧版《哈利·波特》公布六位主要演员名单
365商城官网

剧版《哈利·波特》公布六位主要演员名单

📅 12-31 👁️ 3840
Grangetown必去景點
365充值真人注册

Grangetown必去景點

📅 07-07 👁️ 6262
IT/网管薪资待遇
365商城官网

IT/网管薪资待遇

📅 01-30 👁️ 9085