第六章 分支语句和逻辑操作符

  1、&&的优先级低于关系操作符。

  2、取值范围:取值范围的每一部分都使用AND操作符将两个完整的关系表达式组合起来:

  if(age>17&&age<35)  // OK

  if(17<age<35)   // don't do this!!

  3、!操作符的优先级高于所有的关系操作符和算术运算符。即!>关系操作符>AND>OR。

  4、虽然C++操作符的优先级规则常可能不使用括号便可以编写复合比较的语句,但最简单的方法还是用括号将测试进行分组,而不管是否需要括号!

  5、switch语句中的每一个case标签都必须是一个单独的值,另外,这个值必须是整数(包括char),因此switch无法处理浮点测试。另外case标签值还必须是常量。

  6、使用cin进行输入时,程序将输入视为一系列的字节,其中每个字节都被解释为字符编码。不管目标数据类型是什么,输入一开始都是字符数据——文本数据。然后,cin对象负责将文本数据转为其他类型。

  7、写入到文本文件中的必须步骤:

  #include<fstream>  // 里面定义了一个用于处理输出的ofstream类。

  ofstream outFile;// 声明一个ofstream类对象。

  outFile.open("fish.txt"); // 将对象与特定的文件关联起来。若打开已有文件,以接受输出时,默认将其长度截短为  0,因此原来的内容将丢失

  或者 char filename[50]; cin>>filename; outFile.open(filename);

  double wt=125.8;

  outFile<<wt;  // write a number to  fish.txt

  char line[81]="gfdsygfiuewgfhuidshfuids";

  outFile<<line<<endl; // write  a line to fish.txt

  outFile.close()  // 使用完文件后,应使用close将其关闭

  注:所有可用于cout的操作和方法(如<<、endl和setf())都可用于ofstream对象;创建好ofstream对象后,便可以像使用cout那样使用它了。

  8、读取文本文件的必须步骤:

  #include<fstream>  // 里面定义了一个用于处理输出的ifstream类。

  ifstream inFile;// 声明一个ifstream类对象。

  inFile.open("bowling.txt"); // 将对象与特定的文件关联起来。

  或者 char filename[50]; cin>>filename; inFile.open(filename);

  double wt;

  inFil>>wt;  // read a number from  bowling.txt

  char line[81];

  inFile.getline(line,81); // read  a line of text

  inFile.close()  // 使用完文件后,应使用close将其关闭

  注:所有可用于cin的操作和方法都可用于ifstream对象;

  9、检查文件是否被成功打开的方法:is_open()或者good():

  inFile.open("bowling.txt");

  if(!inFile.is_open())=if(!inFile.good())

  {

    exit(EXIT_FAILURE);

  }

  exit()的原型是在头文件cstdlib中定义的,在该头文件中还定义了一个用于操作系统通信的参数值EXIT_FAILURE。函数exit()终止程序。

  10、读取文件的检查:如果遇到EOF,方法eof()将返回true;类型如果不匹配或者遇到EOF,方法fail()将返回true;如果某些预期外的东西可能出现问题,例如文件受损或硬件故障,方法bad()将返回true。不要分别检查这些情况,一种更简单的方法是用good()方法,该方法在没有发生任何错误时返回true。

《C++ Primer Plus》读书笔记之四—分支语句和逻辑操作符的更多相关文章

  1. 学习C++.Primer.Plus 6 分支语句和逻辑操作符

    ||. &&操作符是一个顺序点 < 操作符从左向右结合 ; < age < )//17<age为true, = 1,肯定 < 27.所以为整个条件为tru ...

  2. C++ primer plus读书笔记——第6章 分支语句和逻辑运算符

    第6章 分支语句和逻辑运算符 1. 逻辑运算符的优先级比关系运算符的优先级低. 2. &&的优先级高于||. 3. cctype中的函数P179. 4. switch(integer- ...

  3. 《C++ Primer》读书笔记 第一章

    读<C++ Primer>才知道,自己对C++知之甚少... 写个博客记录下自己C++的成长,只是读书笔记,不是对<C++ Primer>知识点的总结,而是对自己在书上看到的以 ...

  4. 《C#图解教程》读书笔记之四:类和继承

    本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.万物之宗:Object (1)除了特殊的Object类,其他所有类都是派生类,即使他们没有显示基类定义. ( ...

  5. C++ Primer Plus读书笔记(六)分支语句和逻辑运算符

    1. 以上均包含在cctype中 1 #include<cctype> 2 //#include<ctype.h> 2.文件操作 (1)头文件 1 #include<fs ...

  6. C primer plus 读书笔记第六章和第七章

    这两章的标题是C控制语句:循环以及C控制语句:分支和跳转.之所以一起讲,是因为这两章内容都是讲控制语句. 第六章的第一段示例代码 /* summing.c --对用户输入的整数求和 */ #inclu ...

  7. C primer plus 读书笔记第一章

    写在前面: 算法和数据结构是计算机学习的基础,而大部分书籍是用C/C++编写.所以有了把C语言重新学一遍的想法.这个系列主要是记录看C primer plus的一些笔记和部分课后习题的答案,不会总结的 ...

  8. 《C++ Primer》读书笔记—第二章 变量和基本类型

    声明: 文中内容收集整理自<C++ Primer 中文版 (第5版)>,版权归原书所有. 学习一门程序设计语言最好的方法就是练习编程. 1.8比特的char类型计算机表示的实际范围是-12 ...

  9. C++ Primer Plus读书笔记

    第五章 循环和关系表达式 1. 2.类别别名: (1)   #define FLOAT_POINTER float * FLOAT_POINTER pa, pb; 预处理器置换将该声明转换成  flo ...

随机推荐

  1. Types方法之isCastable-isConvertible

    5. Conversions and Promotions 5.1. Kinds of Conversion 5.1.1. Identity Conversion 5.1.2. Widening Pr ...

  2. JavaScript数据结构-3.List

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. JavaScript设计模式-15.适配器模式

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. mix使用本地依赖

    在看elixir程序设计,书中讲到依赖设置,但是都是要联网,自己希望可以下载到本地电脑硬盘,然后项目要使用就用本地的,不要每次都要下载,因为天朝下载真的不稳 官方看到文档 {:deps_name,pa ...

  5. iview中使用Tag时进行数据的变化和实现将输入内容转化为标签输出数组

    上代码 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title ...

  6. maven 错误:读取 xxx.jar 时出错;invalid LOC header (bad signature) 1 错误

    reqHeader:{Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, Upgrade-Insecure- ...

  7. [转] 如何应用设计模式设计你的足球引擎(一和二)----Design Football Game(Part I and II)

    原文地址: http://www.codeproject.com/KB/architecture/applyingpatterns.aspx 作者:An 'OOP' Madhusudanan 译者:赖 ...

  8. Java - 使可访问性最小化

    模块设计是否良好,有个重要的因素在于,相对外部模块是否隐藏内部数据以及实现细节. 设计良好的模块会隐藏实现细节,并将API与其实现隔离开来. 模块之间通过API进行通信,对于内部工作情况互不可见. 即 ...

  9. 【8】memcached实例

    一.memcached环境搭建 1.下载后解压到D:\memcached(下载地址:memcached-win64下载地址) 2.安装到windows服务,打开cmd命令行,进入memcached目录 ...

  10. jsp技术知识点

    1.jsp被Tomcat翻译成.java文件后,会被放在Tomcat安装目录下的\work\Catalina\localhost\station\org\apache\jsp文件夹下 2.El表达式表 ...