当前位置: 首页 > article >正文

【C++ Primer Plus学习记录】for循环与while循环

在C++中,for与while本质上是相同的。

通常,使用for循环为循环计数;在无法预知循环将执行的次数时,程序员常使用while循环。

例如,下面的for循环:

for(init-expression;test-expression;update-expression)
{
   statement(s);
}

可以改写成:

init-expression;
while(test-expression)
{
   statement(s);
   update-expression;
}

同样的,下面的while循环:

while(test-expression)
{
   statement(s);
}

可以改写成:

for(;test-expression;)
{
   statement(s);
}

for循环需要3个表达式,不过它们可以是空表达式(语句),只有两个分号是必需的。另外,省略for循环中的测试表达式时,测试结果将为true,因此下面的循环将一直运行下去

for( ; ;)
   body

for循环与while循环的三个区别:

1.for循环中省略了测试条件时,将被认为条件为true。

2.在for循环中,可以使用初始化语句声明一个局部变量,但在while中不能这样做。

3.如果循环体中包含continue语句,情况将稍有不同(第6章)。

设计循环时的3条指导原则:

1.指定循环终止的条件。

2.在首次测试之前初始化条件。

3.在条件被再次测试之前更新条件。

for循环的一个优点是,其结构提供了一个可实现上述3条指导原则的地方,因此有助于程序员记住应该这样做。但这些指导原则也适用于while循环。


http://www.kler.cn/a/147289.html

相关文章:

  • LabVIEW中的UDP与TCP比较
  • 项目配置文件选择(Json,xml,Yaml, INI)
  • Scratch 014生日贺卡(上)
  • Android OpenGL ES详解——glTexImage2D方法
  • 在Node.js中如何使用TypeScript
  • JavaEE 重要的API阅读
  • 基于阻塞队列的生产者消费者模型
  • C语言:选择法对十个整数排序
  • 爬取极简壁纸
  • css实现鼠标移入背景图片变灰并浮现文字的效果
  • linux 命令 sudo、su 命令
  • 小H喜欢睡觉(C语言实现)
  • 多传感器融合SLAM调研
  • 前端项目部署自动检测更新后通知用户刷新页面(前端实现,技术框架vue、js、webpack)——方案一:编译项目时动态生成一个记录版本号的文件
  • C#——多线程之异步调用容易出现的问题
  • Go语言初始化已有环境,跟踪已有依赖环境
  • Android设计模式--桥接模式
  • 数据可视化:在Jupyter中使用Matplotlib绘制常用图表
  • Echarts大屏可视化_02 球体模块制作
  • kafka的详细安装部署
  • Vue路由跳转页面刷新
  • 87基于matlab的双卡尔曼滤波算法
  • java游戏制作-王者荣耀游戏
  • linux环境下samba服务器的配置
  • MYSQL 排序和分组怎么做?
  • ChatGLM2-6B微调过程说明文档