提交 c4b4e496 编写于 作者: W wizardforcel

2019-08-20 12:58:08

上级 56ad0e80
......@@ -15,7 +15,7 @@ while(condition)
## 循环如何工作?
在 while 循环中,首先计算条件,如果它返回 true,则 while 循环中的语句执行,这会重复发生,直到条件返回 false。当 condition 返回 false 时,控退出循环并在 while 循环后跳转到程序中的下一个语句。
在 while 循环中,首先计算条件,如果它返回 true,则 while 循环中的语句执行,这会重复发生,直到条件返回 false。当 condition 返回 false 时,控制流退出循环并在 while 循环后跳转到程序中的下一个语句。
**注意:**使用 while 循环时要注意的重点是我们需要在 while 循环中使用递增或递减语句,以便循环变量在每次迭代时都会发生变化,并且在某些情况下返回 false。这样我们就可以结束 while 循环的执行,否则循环将无限期地执行。
......
......@@ -2,7 +2,7 @@
> 原文: [https://beginnersbook.com/2017/08/cpp-continue-statement/](https://beginnersbook.com/2017/08/cpp-continue-statement/)
在循环内使用 continue 语句。每当在循环内遇到 continue 语句时,控直接跳转到循环的开头以进行下一次迭代,跳过循环体内语句的执行以进行当前迭代。
在循环内使用 continue 语句。每当在循环内遇到 continue 语句时,控制流直接跳转到循环的开头以进行下一次迭代,跳过循环体内语句的执行以进行当前迭代。
#### `continue`语句的语法
......
......@@ -4,9 +4,9 @@
**中断语句**用于以下两种情况:
a)使用 break 语句立即退出循环。每当在循环内遇到 break 语句时,控就会直接从循环中退出。它与 if 语句一起使用,只要在循环内部使用(参见下面的示例),以便它仅在特定条件下发生。
a)使用 break 语句立即退出循环。每当在循环内遇到 break 语句时,控制流就会直接从循环中退出。它与 if 语句一起使用,只要在循环内部使用(参见下面的示例),以便它仅在特定条件下发生。
b)用于箱体后的开关箱控制结构。通常,在 switch case 中的所有情况都跟一个 break 语句,以避免后续的情况(参见下面的例子)执行。无论何时在`switch-case`块中遇到,控制器都从`switch-case`体中出来。
b)用于箱体后的`switch`箱控制结构。通常,在 switch case 中的所有情况都跟一个 break 语句,以避免后续的情况(参见下面的例子)执行。无论何时在`switch-case`块中遇到,控制器都从`switch-case`体中出来。
#### `break`语句的语法
......@@ -20,7 +20,7 @@ break;
## 示例 - 在`while`循环中使用`break`语句
在下面的示例中,我们有一个从 10 到 200 运行的 while 循环,但由于我们有一个在循环计数器变量值达到 12 时遇到的 break 语句,循环终止并且控跳转到程序中的下一个语句之后循环体。
在下面的示例中,我们有一个从 10 到 200 运行的 while 循环,但由于我们有一个在循环计数器变量值达到 12 时遇到的 break 语句,循环终止并且控制流跳转到程序中的下一个语句之后循环体。
```cpp
#include <iostream>
......
......@@ -52,7 +52,7 @@ int sum(int a, int b, int c){
> **如果为参数指定默认值,则后续参数必须为其分配默认值,否则将出现编译错误。**
**例如:**让我们看一些有效和无效的案例
**例如:**让我们看一些有效和无效的`case`
**有效:**以下函数声明有效 -
```cpp
......
......@@ -2,9 +2,9 @@
> 原文: [https://beginnersbook.com/2017/08/first-cpp-program/](https://beginnersbook.com/2017/08/first-cpp-program/)
在本指南中,我们将编写和理解**在 C++** 编程中的第一个程序。我们正在编写一个打印“Hello World!”消息的简单 C++程序。让我们先看看程序,然后我们将详细讨论它的每一部分。
在本指南中,我们将编写和理解**在 C++** 编程中的第一个程序。我们正在编写一个打印`Hello World!`消息的简单 C++程序。让我们先看看程序,然后我们将详细讨论它的每一部分。
## C++中的 Hello World 程序
## C++中的`Hello World`程序
```cpp
/*
......@@ -34,7 +34,7 @@ Hello World!
我们来讨论上述程序的每一部分。
**1.注释** - 您可以在上述程序中看到两种类型的注释
**1\. 注释** - 您可以在上述程序中看到两种类型的注释
```cpp
// This is a single line comment
......@@ -58,12 +58,12 @@ int sum(int num1, int num2) {
现在,如果有人阅读我的注释,他或她只需阅读我的注释即可理解我在那里所做的事情。这提高了代码的可读性,当您与团队成员一起开展项目时,这将成为必不可少的方面。
**2.#include&lt; iostream&gt;** - 此语句告诉编译器包含 iostream 文件。该文件包含我们可以在程序中使用的预定义输入/输出函数。
**2\. `#include <iostream>`** - 此语句告诉编译器包含`iostream`文件。该文件包含我们可以在程序中使用的预定义输入/输出函数。
**3.使用 namespace std;** - 名称空间就像一个区域,我们有函数,变量等,它们的范围仅限于该特定区域。这里 std 是一个命名空间名称,它告诉编译器查看所有变量,函数等的特定区域。我不会在这里详细讨论它,因为它可能会让你感到困惑。我在一个单独的教程中通过示例介绍了这个主题。按照给定顺序的教程,你会没事的。
**3\. `using namespace std;`** - 名称空间就像一个区域,我们有函数,变量等,它们的范围仅限于该特定区域。这里`std`是一个命名空间名称,它告诉编译器查看所有变量,函数等的特定区域。我不会在这里详细讨论它,因为它可能会让你感到困惑。我在一个单独的教程中通过示例介绍了这个主题。按照给定顺序的教程,你会没事的。
**4\. int main()** - 顾名思义这是我们程序的主要功能,程序的执行从这个函数开始,这里的 int 是返回类型,它向编译器指示这个函数将返回一个整数值。这是我们在 main 函数结束时返回 0 语句的主要原因。
**4\. `int main()`** - 顾名思义这是我们程序的主要功能,程序的执行从这个函数开始,这里的 int 是返回类型,它向编译器指示这个函数将返回一个整数值。这是我们在 main 函数结束时返回 0 语句的主要原因。
**5\. cout&lt;&lt; “你好,世界!”;** - `cout`对象属于 iostream 文件,此对象的目的是在屏幕上显示双引号之间的内容。这个对象也可以在屏幕上显示变量的值(不用担心,我们将在后面的教程中看到)。
**5\. `cout<<"Hello World!";`** - `cout`对象属于`iostream`文件,此对象的目的是在屏幕上显示双引号之间的内容。这个对象也可以在屏幕上显示变量的值(不用担心,我们将在后面的教程中看到)。
**6.返回 0;** - 该语句从 main()函数返回值 0,表示 main 函数的执行成功。值 1 表示执行失败。
\ No newline at end of file
**6\. `return 0;`** - 该语句从`main()`函数返回值 0,表示`main`函数的执行成功。值 1 表示执行失败。
\ No newline at end of file
......@@ -54,7 +54,7 @@ int main(){
既然我们已经理解了什么是枚举以及如何在程序中使用它们,那么让我们讨论一下我们使用它们的原因:
只有在我们期望变量具有一组可能的值时才使用枚举,例如,我们有一个保持方向的 dir 变量。由于我们有四个方向,这个变量可以取四个值中的任何一个,如果我们尝试为这个变量分配另一个随机值,它将抛出一个编译错误。这会增加编译时检查并避免通过传入无效常量而发生的错误。
经常使用它们的另一个重要位置是[`switch-case`语句](https://beginnersbook.com/2017/08/cpp-switch-case/),其中案例块期望的所有值都可以在枚举中定义。这样我们就可以确保我们在 switch 括号中传递的 enum 变量没有采用它不应该接受的任何随机值。
经常使用它们的另一个重要位置是[`switch-case`语句](https://beginnersbook.com/2017/08/cpp-switch-case/),其中`case`块期望的所有值都可以在枚举中定义。这样我们就可以确保我们在 switch 括号中传递的 enum 变量没有采用它不应该接受的任何随机值。
## 如何更改`enum`的默认值
......
......@@ -4,10 +4,10 @@
有时我们只有在满足或不满足特定条件时才需要执行一个语句块。这被称为**决策**,因为我们在程序逻辑中做出决定后执行某个代码。对于 C++中的决策,我们有四种类型的控制语句(或控制结构),如下所示:
a)if 语句
b)嵌套 if 语句
c)if-else 语句
d)if-else-if 语句
a)`if`语句
b)嵌套`if`语句
c)`if-else`语句
d)`if-else-if`语句
## C++中的`if`语句
......
......@@ -2,9 +2,9 @@
> 原文: [https://beginnersbook.com/2017/08/cpp-switch-case/](https://beginnersbook.com/2017/08/cpp-switch-case/)
当我们有多个条件并且我们需要根据条件执行不同的操作时,使用 Switch case 语句。当我们有多个条件时,我们需要在满足特定条件时执行一个语句块。在这种情况下,我们可以使用冗长的 [if..else-if 语句](https://beginnersbook.com/2017/08/cpp-if-else-statement/)或 switch case。冗长 if..else-if 的问题是当我们有几个条件时它会变得复杂。`switch-case`是处理这种情况的干净而有效的方法。
当我们有多个条件并且我们需要根据条件执行不同的操作时,使用`switch case`语句。当我们有多个条件时,我们需要在满足特定条件时执行一个语句块。在这种情况下,我们可以使用冗长的 [`if..else-if`语句](https://beginnersbook.com/2017/08/cpp-if-else-statement/)`switch case`。冗长`if..else-if`的问题是当我们有几个条件时它会变得复杂。`switch-case`是处理这种情况的干净而有效的方法。
Switch case 语句的**语法:**
`switch case`语句的**语法:**
```cpp
switch (variable or an integer expression)
......@@ -21,7 +21,7 @@ switch (variable or an integer expression)
}
```
即使 break 语句是可选的,Switch Case 语句也主要用于 break 语句。我们将首先看到一个没有 break 语句的例子,然后我们将讨论 switch case 和 break
即使`break`语句是可选的,`switch case`语句也主要用于`break`语句。我们将首先看到一个没有`break`语句的例子,然后我们将讨论`switch case``break`
## `switch-case`示例
......@@ -50,7 +50,7 @@ int main(){
Default: Value is: 5
```
**说明**:在开关中我给出了一个表达式,你也可以给出变量。我给了表达式 num + 2,其中 num 值是 5,并且在添加之后表达式得到 7.由于没有用值 4 定义的情况,所以执行了默认情况。
**说明**:在`swicth中我给出了一个表达式,你也可以给出变量。我给了表达式`num + 2`,其中`num`值是 5,并且在添加之后表达式得到 7。由于没有用值 4 定义的情况,所以执行了默认情况。
## `switch-case`流程图
......@@ -59,7 +59,7 @@ Default: Value is: 5
## `switch-case`中的`break`语句
在我们讨论 break 语句之前,让我们看看当我们在 switch case 中不使用 break 语句时会发生什么。请参阅以下示例:
在我们讨论`break`语句之前,让我们看看当我们在`switch case`中不使用`break`语句时会发生什么。请参阅以下示例:
```cpp
#include <iostream>
......@@ -87,11 +87,11 @@ Default
```
在上面的程序中,我们在开关括号内部有变量 i,这意味着无论变量 i 的值是什么,都会执行相应的 case 块。我们已将整数值 2 传递给开关,因此控制切换到案例 2,但是在案例 2 之后我们没有使用 break 语句导致流程继续到后续案例直到结束。然而,这不是我们想要的,我们想要执行正确的大小写块并忽略其余的块。这个问题的解决方案是在每个 case 块之后使用 break 语句。
在上面的程序中,我们在`switch`括号内部有变量`i`,这意味着无论变量`i`的值是什么,都会执行相应的`case`块。我们已将整数值 2 传递给`switch`,因此控制切换到`case` 2,但是在`case` 2 之后我们没有使用`break`语句导致流程继续到后续`case`直到结束。然而,这不是我们想要的,我们想要执行正确的大小写块并忽略其余的块。这个问题的解决方案是在每个`case`块之后使用`break`语句。
当您希望程序流从交换机主体中出来时,使用 Break 语句。每当在交换机主体中遇到 break 语句时,执行流程将直接从交换机中出来,忽略其余的情况。这就是您必须使用 break 语句结束每个 case 块的原因。
当您希望程序流从`switch`主体中出来时,使用`break`语句。每当在`switch`主体中遇到`break`语句时,执行流程将直接从`switch`中出来,忽略其余的情况。这就是您必须使用`break`语句结束每个`case`块的原因。
让我们采用相同的例子,但这次使用 break 语句。
让我们采用相同的例子,但这次使用`break`语句。
```cpp
#include <iostream>
......@@ -124,14 +124,14 @@ int main(){
Case2
```
现在您可以看到只有案例 2 被执行,其余的后续案例被忽略了。
现在您可以看到只有`case` 2 被执行,其余的后续`case`被忽略了。
**为什么我默认后不使用 break 语句?**
件本身会在默认情况下从开关中出来,所以我之后没有使用 break 语句,但是如果你想要它可以使用它,那么这样做是没有害处的。
**为什么我默认后不使用`break`语句?**
制流本身会在默认情况下从`switch`中出来,所以我之后没有使用`break`语句,但是如果你想要它可以使用它,那么这样做是没有害处的。
## 重要笔记
1)案例并不总是需要订购 1,2,3 等。它可以在 case 关键字后面包含任何整数值。此外,案例不需要始终按升序排列,您可以根据要求以任何顺序指定它们。
1)`case`并不总是需要顺序`1,2,3`等。它可以在`case`关键字后面包含任何整数值。此外,`case`不需要始终按升序排列,您可以根据要求以任何顺序指定它们。
2)您也可以在`switch-case`中使用字符。例如 -
......@@ -155,4 +155,4 @@ int main(){
}
```
3)允许嵌套 switch 语句,这意味着你可以在另一个开关内部使用 switch 语句。但是应该避免使用嵌套的 switch 语句,因为它会使程序更复杂,更不易读。
\ No newline at end of file
3)允许嵌套`switch`语句,这意味着你可以在另一个`switch`内部使用`switch`语句。但是应该避免使用嵌套的`switch`语句,因为它会使程序更复杂,更不易读。
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册