5.1   Simple Statements

1、记得每个语句后面加上”;”不过现在编译器都有实时编译,一般都不会忘记的,

2、空语句

(1)就是啥都没有。只有一个“;”

(2)还是有很多用处的,例如

while (cin>>s  && s!= sought)
;

不停的监测是不是输入的是sought,还有很多地方是这样的说~。

3、括号

主要记住括号的作用:

(1)用在if  while  case 等等语句的后面,把多个语句复合在一起。

(2)括号后面不用以“;”

5.2  Statement Scope

1、如果变量定义在if  switch  while 和for 语句的里面的话,那么这些变量的存在范围就只在if  witch  while for 语句结束之前。

2、如果一个变量要保证在这个函数内访问就不能再上述结构中定义。

5.3  Conditional Statements

一、if语句

if(condition)
{
statement
}
if else(condtion2)
{
statement2
}
else
{ 
     statement3
}

PS:(1)else匹配离自己最近的一个if,所以要检查逻辑是否有问题。

(2)嵌套语句的时候最好加上花括号。

二、switch语句

switch (ch)
{
case 'a':
case 'b':
case 'c':
case 'd': default:
break;
}

1、首先每一个case如果后面没有break的话;就会继续执行下一个case,直到switch的结尾。所以我们要根据情况进行选择。

2、default就是在所有的case都没有匹配的情况下才会执行的。即使你没有写,也会默认生成一个空的default。

5.4  循环

一、The while Statement

1、格式

while(condition)
statement

当条件成立的时候就执行下面的语句,否则就结束循环.

2、注意点

(1)记得,一定要有循环结束的出口,否则便成为死循环,

(2)在循环内定义的变量的作用域只有在循环内,出了循环便失效~

二、The  for Statement

a、继承C的for循环

1、格式

for(initilalizer;condition;expression)
statement

这个是传统的方法,也是C继承下来的,其中初始化语句只执行一次,然后判断条件,为真,则执行statement,最后执行完expression后再进行判断。

2、注意点:

(1)初始化处可以定义变量,变量的作用域只在循环内,而且由于只能是一个语句,所以定义的变量可以有多个,但是类型必须相同。

(2)括号内的三个语句可以选择性的设为空,只要能不成为死循环即可。

b、C++新11特性

1、格式

for(declaration:expression)
statement

这个可以快速的提供遍历一个序列内全部元素的方法.

2、注意点

(1)如果要改变其中变量的值,需要引用变量

(2)vector如果元素个数有发生改变,那么之前取得end多半会失效。

三 the do while Statement

1、格式

do
statement
while(condition);

一样是继承C的循环方法.

2、注意点

记得一定先执行一遍statement,然后才进行条件的判断

5.5  The jump Statement

1、break      直接跳出循环

2、continue     跳出本次循环

3、goto            直接跳到标记点。

5.6  循环和文本输入

cin>>ch;                 //不接受空格和换行符
cin.get(ch); //可以接受任何字符,而且是使用C++中的新方法,声明函数为引用,这样子的话 //形参就直接成为引用形式

C++primer学习笔记(三)——Chapter 5的更多相关文章

  1. C++ Primer学习笔记(三) C++中函数是一种类型!!!

    C++中函数是一种类型!C++中函数是一种类型!C++中函数是一种类型! 函数名就是变量!函数名就是变量!函数名就是变量! (---20160618最新消息,函数名不是变量名...囧) (---201 ...

  2. C++ Primer学习笔记(二)

    题外话:一工作起来就没有大段的时间学习了,如何充分利用碎片时间是个好问题. 接  C++ Primer学习笔记(一)   27.与 vector 类型相比,数组的显著缺陷在于:数组的长度是固定的,无法 ...

  3. Oracle学习笔记三 SQL命令

    SQL简介 SQL 支持下列类别的命令: 1.数据定义语言(DDL) 2.数据操纵语言(DML) 3.事务控制语言(TCL) 4.数据控制语言(DCL)  

  4. [Firefly引擎][学习笔记三][已完结]所需模块封装

    原地址:http://www.9miao.com/question-15-54671.html 学习笔记一传送门学习笔记二传送门 学习笔记三导读:        笔记三主要就是各个模块的封装了,这里贴 ...

  5. JSP学习笔记(三):简单的Tomcat Web服务器

    注意:每次对Tomcat配置文件进行修改后,必须重启Tomcat 在E盘的DATA文件夹中创建TomcatDemo文件夹,并将Tomcat安装路径下的webapps/ROOT中的WEB-INF文件夹复 ...

  6. java之jvm学习笔记三(Class文件检验器)

    java之jvm学习笔记三(Class文件检验器) 前面的学习我们知道了class文件被类装载器所装载,但是在装载class文件之前或之后,class文件实际上还需要被校验,这就是今天的学习主题,cl ...

  7. VSTO学习笔记(三) 开发Office 2010 64位COM加载项

    原文:VSTO学习笔记(三) 开发Office 2010 64位COM加载项 一.加载项简介 Office提供了多种用于扩展Office应用程序功能的模式,常见的有: 1.Office 自动化程序(A ...

  8. Java IO学习笔记三

    Java IO学习笔记三 在整个IO包中,实际上就是分为字节流和字符流,但是除了这两个流之外,还存在了一组字节流-字符流的转换类. OutputStreamWriter:是Writer的子类,将输出的 ...

  9. NumPy学习笔记 三 股票价格

    NumPy学习笔记 三 股票价格 <NumPy学习笔记>系列将记录学习NumPy过程中的动手笔记,前期的参考书是<Python数据分析基础教程 NumPy学习指南>第二版.&l ...

  10. Learning ROS for Robotics Programming Second Edition学习笔记(三) 补充 hector_slam

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

随机推荐

  1. SqlDataReader执行带输出参数存储过程 错误分析

    在上一篇随笔:SqlDataReader读取分页数据,pageCount你是肿么了? 遇到了很让人头疼的问题:SqlDataReader执行带输出参数的存储过程总是获取不到输出参数的正确值.这里将解决 ...

  2. bootstrap tab切换如何让鼠标移动自动切换内容

    bootstrap集成了很多功能,比如nav-tabs组件,可以将相似的内容集中在一个区块中展示.bootstrap tab切换默认是要点击才会切换的,如何实现鼠标移动就自动切换呢?如下图所示,光标移 ...

  3. 关于windows程序的学习及思考系列之一

    1.窗口类的注册 a.windows程序中最简单的就是创建一个简单的窗口,而窗口程序的创建是基于窗口类的,窗口类决定了处理窗口消息的过程函数. b.一个窗口类可以用于创建多个窗口,也就是说窗口是窗口类 ...

  4. 如何改变服务器的本地域名来访问本地服务器 而不用localhost或者127.0.0.1来访问

    1. vim nginx.conf 如下: server {                listen       80;                server_name pma;       ...

  5. [BZOJ3343]教主的魔法

    [BZOJ3343]教主的魔法 试题描述 教主最近学会了一种神奇的魔法,能够使人长高.于是他准备演示给XMYZ信息组每个英雄看.于是N个英雄们又一次聚集在了一起,这次他们排成了一列,被编号为1.2.… ...

  6. 在pc游览器端模拟移动端幻灯片

    用简单的思路写了下pc端模拟web端的图片滑动效果... 效果卡,bug多,完毕,继续学习c3方法写这个,iscroll就是可以模拟这种效果,还在学习中,难点<触点判断> 代码一份 < ...

  7. Linux 制作ftp远程yum仓库

    一.下载createrepo yum install createrepo -y 二.安装vsftp软件 yum install vsftpd -y 三.将pub制作为yum仓库 把需要的rpm包拷贝 ...

  8. centos rm -rf 恢复删除的文件

    Linux有时候执行了 rm -rf 等操作误删了文件绝对是一件可怕的事情,好在有一些解决的办法可以临时救急.这时我们就要用到一款叫做extundelete的工具了. 目录[-] 依赖 安装 查找要恢 ...

  9. 【转】velocity 显示List和Map方法

    一.遍历个map类型 1.先看后台java程序Java代码     Map<String,String> paramValues=new HashMap<String, String ...

  10. 【python】a[::-1]翻转

    设有一个元组或者列表 a = (1,2,3,4) b = [1,2,3,4] 则a[::-1]和b[::-1]的含义是将元组或列表的内容翻转 a[::-1] # 结果为(4,3,2,1) b[::-1 ...