栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

《C++ Primer 中文版》第五 章读书笔记及习题解答

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

《C++ Primer 中文版》第五 章读书笔记及习题解答

目录
      • 简介
      • 5.1 简单语句
      • 5.2 语句作用域
      • 5.3 条件语句
      • 5.4 迭代语句
      • 5.5 跳转语句
      • 5.6 try语句和异常处理
      • 小结
      • 习题解答

简介

  和大多数语言一样,C++提供了条件执行语句、重复执行相同代码的循环语句和用于中断当前控制流的跳转语句。本章将详细介绍C++语言所支持的这些语句。
  通常情况下,语句是顺序执行的。但除非是最简单的程序,否则仅有顺序执行远远不够。因此C++语言提供了一组控制流(flow-of-control)语句以支持更复杂的执行路径。

5.1 简单语句

  C++语言的大多数语句都以分号结束,一个表达式,末尾加上分号就变成了表达式语句(expression statement)。表达式语句的作用是执行表达式并丢弃掉求值结果:

ival+5;//一条没什么实际用处的表达式语句
cout< 

  第一条语句没什么用,因为虽然执行力加法,但是相加的结果没有被使用。比较普遍的情况是:表达式语句中的表达式在求值时附带了其它效果,比如说给变量赋了新值或者输出了结果。
空语句
  最简单的语句时空语句(null statement),空语句中只含有一个单独的分号。如果在程序的某个地方,语法上需要一个语句但是逻辑上不需要,此时应该用空语句。一种常见的情况是,当循环的全部工作在条件部分就可以完成时,我们通常会用到空语句。例如,我们想读取输入流的 内容直到遇到一个特定的值为止,除此之外什么事情也不做:

//重复读入数据直至到达文件某位或者某处输入 的值等于sought
while(cin>>s && s!=sought)
	;//空语句

  使用空语句时,应该加上注释,从而令读这段代码的人知道该语句是有意省略的。

别漏写分号,也别多写分号
  因为空语句是一条语句,所以可用在任何允许使用语句的地方。所以某些看起来非法的分号往往只不过是一条空语句而已,从语法上说得过去。多余的空语句一般来说是无害的,但是如果在if或者while的条件后面跟了一个额外的分号就可能完全改变程序员的初衷。例如,下面的代码将无限循环下去:

//出现了额外的分号,循环体是那条空语句
while(iter!=svec.end()) ;//while循环体是那条空语句
	++iter;//递增运算不属于循环的一部分

复合语句(块)
  复合语句(compoud statement)是指用花括号括起来的(可能为空)的语句和声明序列,复合语句也被称为块(block)。一个块就是一个作用域,在块中引入的名只能在块内部以及嵌套在块中的子块里访问。 通常,名字在有限的区域内可见,该区域从名字定义处开始,到名字所在的(最内层)块的结尾为止。
  如果在程序的某个地方,语法上需要一条语句,但是逻辑上需要多条语句,则应该给使用复合语句。例如,while循环和for循环,if-else语句。此时我们就应该将多条语句用花括号括起来,从而把语句序列转换为块。
  所谓空块,是指内部没有任何语句的一对花括号。空块的作用等价于空语句。

5.2 语句作用域 5.3 条件语句 5.4 迭代语句 5.5 跳转语句 5.6 try语句和异常处理 小结 习题解答
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/290192.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号