Primer Plus U5读书笔记 基于范围的for循环、时间延时、常见字符输入法

基于范围的for循环       : 对数组(或容器类,如vector和array)的每个元素执行相同的操作

double prices[5] = {4.99,10.99,6.87,7.99,8.49};

for(double x:prices)

cout << x<< std::endl;

x最初表示数组prices的第一个元素,显示第一个元素后,不断执行循环,而x依次表示数组的其他元素。总之,该循环显示数组中的每个值。


要修改数组的元素,需要使用不同的循环变量语法:

for(double &x : prices)             //该&表示引用而不是取地址

x = x * 0.8;

for(int x : {3,5,2,8,6})                 //初始化列表

cout << x<<" ";


时间延时函数

#include <iostream>

#include <ctime>

{

     using namespace std;

    clock_t delay = 5 * CLOCKS_PER_SEC;         //计算5秒的系统时间单位数,CLOCKS_PER_SEC定义于ctime中。

    clock_t start = clock();                    //运行时的时间

while(clock()-start < delay )

         ;                                        //延时5s

     return 0;

}



常见字符输入法

1、 cin.get(ch);

while(cin.fail()==false) //每次读取一个字符,直到遇到EOF的输入循环

{

..

cin.get(ch);

}


2、 cin.get(ch)

while(cin) //如果最后一次读取成功了,则转换得到的bool值为true,否则为false。

{

cin.get(ch); //cin.get(char)返回值为cin

}

方法2比 !cin.fail()或!cin.eof()更通用,因为它可以检测到其他失败的原因,如磁盘故障。


3、 while((ch=cin.get())!=EOF) //cin.get()返回下一个输入字符--包括空格、换行符和制表符


4、getline(cin,line),返回cin :读取一行的内容(至换行符),并丢弃换行符。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值