C++ Break、Continue 和 数组操作详解

本文涉及的产品
性能测试 PTS,5000VUM额度
可观测可视化 Grafana 版,10个用户账号 1个月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
简介: C++中的`break`语句用于跳出循环,例如在`for`或`while`循环中。`continue`则跳过当前迭代的剩余部分。数组用于存储多个相同类型值,声明时指定类型和元素数量。访问和修改数组元素通过索引操作,索引从0开始。遍历数组可使用常规`for`循环或C++11引入的`foreach`循环。可以省略数组大小声明,编译器会根据初始值自动计算,但明确指定更佳。

C++ Break 和 Continue

break 语句还可以用来跳出循环。

在以下示例中,当 i 等于 4 时跳出循环:

for (int i = 0; i < 10; i++) {
   
  if (i == 4) {
   
    break;
  }
  cout << i << "\n";
}

C++ Continue

以下示例跳过了值为 4 的情况:

for (int i = 0; i < 10; i++) {
   
  if (i == 4) {
   
    continue;
  }
  cout << i << "\n";
}

在 While 循环中使用 Break 和 Continue

你也可以在 while 循环中使用 breakcontinue

Break 示例

int i = 0;
while (i < 10) {
   
  cout << i << "\n";
  i++;
  if (i == 4) {
   
    break;
  }
}

Continue 示例

int i = 0;
while (i < 10) {
   
  if (i == 4) {
   
    i++;
    continue;
  }
  cout << i << "\n";
  i++;
}

C++ 数组

数组用于在单个变量中存储多个值,而不是为每个值声明单独的变量。

要声明数组,请定义变量类型,指定数组名称,后跟方括号,并指定它应该存储的元素数:

string cars[4];

我们现在声明了一个变量,它保存了一个包含四个字符串的数组。要向其中插入值,我们可以使用数组文字 - 将值放在逗号分隔的列表中,放在花括号内:

string cars[4] = {
   "Volvo", "BMW", "Ford", "Mazda"};

要创建一个包含三个整数的数组,你可以这样写:

int myNum[3] = {
   10, 20, 30};

访问数组的元素

通过在方括号 [] 内引用索引号来访问数组元素。

该语句访问 cars 中的第一个元素的值:

示例

string cars[4] = {
   "Volvo", "BMW", "Ford", "Mazda"};
cout << cars[0];
// 输出 Volvo

注意: 数组索引从 0 开始:[0] 是第一个元素。[1] 是第二个元素,依此类推。

更改数组元素

要更改特定元素的值,请引用索引号:

cars[0] = "Opel";

示例

string cars[4] = {
   "Volvo", "BMW", "Ford", "Mazda"};
cars[0] = "Opel";
cout << cars[0];
// 现在输出 Opel 而不是 Volvo

遍历数组

你可以使用 for 循环遍历数组元素。

以下示例输出 cars 数组中的所有元素:

示例

string cars[5] = {
   "Volvo", "BMW", "Ford", "Mazda", "Tesla"};
for (int i = 0; i < 5; i++) {
   
  cout << cars[i] << "\n";
}

这个示例输出每个元素的索引和其值:

示例

string cars[5] = {
   "Volvo", "BMW", "Ford", "Mazda", "Tesla"};
for (int i = 0; i < 5; i++) {
   
  cout << i << " = " << cars[i] << "\n";
}

这个示例展示了如何遍历一个整数数组:

示例

int myNumbers[5] = {
   10, 20, 30, 40, 50};
for (int i = 0; i < 5; i++) {
   
  cout << myNumbers[i] << "\n";
}

foreach 循环

还有一个“foreach 循环”(在 C++ 版本 11(2011)中引入),它专门用于遍历数组中的元素:

语法

for (类型 变量名 : 数组名) {
   
  // 要执行的代码块
}

以下示例使用了“foreach 循环”输出数组中的所有元素:

示例

int myNumbers[5] = {
   10, 20, 30, 40, 50};
for (int i : myNumbers) {
   
  cout << i << "\n";
}

省略数组大小

在 C++ 中,你不必指定数组的大小。编译器足够智能,可以根据插入的值的数量确定数组的大小:

string cars[] = {
   "Volvo", "BMW", "Ford"}; // 三个数组元素

上面的示例等同于:

string cars[3] = {
   "Volvo", "BMW", "Ford"}; // 也是三个数组元素

然而,最后一种方法被认为是“良好的做法”,因为它将减少程序中错误的几率。

省略声明中的元素

还可以在不在声明时指定元素的情况下声明一个数组,并在以后添加它们:

示例

string cars[5];
cars[0] = "Volvo";
cars[1] = "BMW";
// ...

最后

为了方便其他设备和平台的小伙伴观看往期文章:

微信公众号搜索:Let us Coding,关注后即可获取最新文章推送

看完如果觉得有帮助,欢迎点赞、收藏、关注

相关文章
C++——循环中的特殊控制:continue与break
C++——循环中的特殊控制:continue与break
|
Java Android开发 C++
Android C++ 系列:JNI 数组操作
在 Android JNI 基础知识篇提到了 Java 数组类型对应的 JNI 数组类型。比如,Java int 数组对应了 jintArray,boolean 数组对应了 jbooleanArray。
167 0
C/C++零散知识点汇总之break、continue、goto、return和exit
C/C++零散知识点汇总之break、continue、goto、return和exit
|
C++
C++循环语句使用(while for do while)及break continue goto的使用
C++循环语句使用(while for do while)及break continue goto的使用
182 0
c++循环、continue、排序、goto以及猜数字小游戏
c++循环、continue、排序、goto以及猜数字小游戏
|
2天前
|
C++ 芯片
【C++面向对象——类与对象】Computer类(头歌实践教学平台习题)【合集】
声明一个简单的Computer类,含有数据成员芯片(cpu)、内存(ram)、光驱(cdrom)等等,以及两个公有成员函数run、stop。只能在类的内部访问。这是一种数据隐藏的机制,用于保护类的数据不被外部随意修改。根据提示,在右侧编辑器补充代码,平台会对你编写的代码进行测试。成员可以在派生类(继承该类的子类)中访问。成员,在类的外部不能直接访问。可以在类的外部直接访问。为了完成本关任务,你需要掌握。
32 18
|
2天前
|
存储 编译器 数据安全/隐私保护
【C++面向对象——类与对象】CPU类(头歌实践教学平台习题)【合集】
声明一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,以及两个公有成员函数run、stop。根据提示,在右侧编辑器补充代码,平台会对你编写的代码进行测试。​ 相关知识 类的声明和使用。 类的声明和对象的声明。 构造函数和析构函数的执行。 一、类的声明和使用 1.类的声明基础 在C++中,类是创建对象的蓝图。类的声明定义了类的成员,包括数据成员(变量)和成员函数(方法)。一个简单的类声明示例如下: classMyClass{ public: int
30 13
|
2天前
|
编译器 数据安全/隐私保护 C++
【C++面向对象——继承与派生】派生类的应用(头歌实践教学平台习题)【合集】
本实验旨在学习类的继承关系、不同继承方式下的访问控制及利用虚基类解决二义性问题。主要内容包括: 1. **类的继承关系基础概念**:介绍继承的定义及声明派生类的语法。 2. **不同继承方式下对基类成员的访问控制**:详细说明`public`、`private`和`protected`继承方式对基类成员的访问权限影响。 3. **利用虚基类解决二义性问题**:解释多继承中可能出现的二义性及其解决方案——虚基类。 实验任务要求从`people`类派生出`student`、`teacher`、`graduate`和`TA`类,添加特定属性并测试这些类的功能。最终通过创建教师和助教实例,验证代码
20 5