循环 与 分支语句 和 字符函数库cctype 文件简单处理
- for循环
- while循环
- do while循环
- int a[5]={1,3,4,5,6};
- int a[5]={1,3,4,5,6};
- for (int i :{1,3,4,5,6})
- 指定循环终止条件
- 在首次测试前初始化条件
- 在条件再次测试前更新条件
- 语句块是由花括号,而不是缩进定义的
- ANSI和c++库中存在clock函数返回程序开始执行后所用的系统时间,单位不一定是秒
- 添加头文件#include<ctime>
- CLOCKS_PER_SEC,该常量等于每秒钟包含的系统时间,所以系统时间除于这个值等于秒数
- ctime把clock_t作为clock()返回类型的别名,这意味着可以把变量声明为clock_k类型
- 使用预处理器:#define aliasname typename
- 当声明多个一系列别名时不能使用
- 使用关键字typedef创建:typedef typename aliasname
- 能处理define处理不了的复杂别名,与define相比,typedif是更好的选择,有时也是唯一的选择
- 注意,typedif不是创建新类型,而是在已有的类型建立一个新名称
- 使用原始的cin进行输入
- cin读取char值时与读取其他基本类型一样,忽略了空格和换行符,所以输入的空格没有显示也没有包括在计数内
- 用cin输入时被缓冲,意味着当用户按下回车才发给程序,当缓存区还有数据时,会赋予下一条cin语句
- int n;cin>>n;如果输入的类型不匹配时将出现4种情况
- n的值不变
- 不匹配的输入将留在输入队列的缓冲区中
- cin中一个错误的标记被设置 (当错误被标记时,可以使用cin.clear()重置标记,同时也清除文件尾的eof)
- 对cin方法的调用返回false或0
- 使用cin.get()
- cin.get(ch)读取输入中的下一个字符(即使是空格),并将其赋给变量ch
- 在c语言中要修改变量的值,必须将变量的地址传递给函数,但在c++中只要将参数声明为引用即可,头文件iostream将cin.get(ch)的参数声明为引用类型
- cin.get()函数接受不同数量参数的原因是函数重载
- 当cin及cin.get()等输入作为循环条件时,则转换成bool类型,正确输入则返回true错误则返回false
- 当程序用户输入了错误内容时应采取3个步骤
- 用clear()函数重置cin以接收新的输入
- 用cin.get()读取行尾之前的所有输入,也就是删除错误输入
- 提示用户重新输入
- windo命令提示符模式下在任意位置按下Ctr+z和Enter
- 检测到EOF后cin将两位(eofbit和failbit)都设置为1;通过成员函数cin.eof()和cin.fail()来查看eofbit是否被设置,返回true和false
- cin.clear()可以用来重置输入流,即清空缓冲区,
- !运算符高于所有关系运算符和算术运算符
- 逻辑 | | 运算符高于&&运算符
- C语言用逻辑运算符的另一种表达方式需要包含头文件iso646.h,c++不需要使用头文件,即&& and,|| or,! not
|
函数名称
|
返回值
|
|
isalnum()
|
如果参数是数字或字母,则返回true
|
|
isalpha()
|
如果参数是字母,则返回true
|
|
islower()
|
如果是小写字母,则返回true
|
|
isupper()
|
如果是大写字母,则返回true
|
|
isdigit()
|
如果是数字(0-9),则返回true
|
|
isctrl()
|
如果是控制字符,则返回ture
|
|
isgraph()
|
如果是空格以外的打印字符,则返回true
|
|
ispunct()
|
如果是标点符号该字符返回true
|
|
isprint()
|
如果参数是打印字符(包括字符),则返回true
|
|
isspace()
|
如果参数是标准空白字符,包括空格换行回车制表符,则返回true
|
|
isxdigit()
|
如果参数是16进制数字,则返回true
|
|
toupper()
|
如果是小写字母则返回大写字母,否则返回原参数
|
|
tolower()
|
如果是大写字母则返回小写字母,否则返回原参数
|
- c++种唯一一个需要3个操作数的运算符
- 表达式1 ? 表达式2 :表达式3 //当表达式1为true时,则执行表达式2,为false时则执行表达式3
- 而且可以在条件表达式中嵌套另一个表达式(一个被谴责的任务,隐藏代码)
- integer-expreession必须是结果为整数的表达式
- 标签必须是一个整数常量表达式,如:int,char,也可以是枚举量
- 如果integer-expreession找不到匹配的标签,则执行default标签
- 为了应对不按指令办事的用户,最好用字符输入
- 要让程序执行一组特定语句后停止,必须使用break
- switch语句中将int值和枚举量标签进行比较时,将枚举提升为int,在while循环测试条件中,也会将枚举量提升为int类型
- 当选项多余3个时,最好用switch分支语句
- 写入到文本文件
- 必须包含头文件fstream
- 必须指明名称空间std,可以使用using或std::
- 头文件ftream定义一个处理输出的ofstream类
- 需要创建多个ofstream变量(对象),要遵守变量的命名规则
- 将ofstream对象与文件关联起来,可以使用open()方法
- 使用完应使用close()将其关闭
- 可以像使用cout那样使用ofstream的对象,如<<,endl以及各种cout格式化函数
- 方法open()接受一个字面字符串做参数,或存在数组的字符串。
- 将在当前目录新建文件,open参数将会是文件名,如果文件名存在则默认清空再打开
- 如果没有使用close(),系统将在程序正常终止时关闭
- 读取文本文件
- 必须包含头文件fstream
- 必须指明名称空间std,可以使用using或std::
- 头文件ftream定义一个处理输入的ifstream类
- 需要创建多个ifstream变量(对象),要遵守变量的命名规则
- 将ifstream对象与文件关联起来,可以使用open()方法
- 使用完应使用close()将其关闭
- 可以像使用cin那样使用ifstream的对象,cin适用的操作和方法都适用ifstream的对象,如>>
- 可以使用ifstream对象和get()方法读取一个字符,使用getline()方法读取一行字符
- 可以结合ifstream和eof()、fail()等方法判断输入是否成功
- 当ifstream的对象被作为测试条件时,最后一个读取操作成功时转化成true,否则false
- 检查文件是否成功打开可以使用方法is_open(),成功返回true
- 读取文件时不应该超过EOF
- 最后读取数据遇到EOF,eof()返回true
- 最后数据出现类型不匹配时,fail()将返回ture
- 当文件受损,或硬件故障时,bad()将返回true
- 当没有出现任何错误时,good()将返回true
- 通常cout显示bool值之前把他们转化成int,但cout.self(ios::boolalpha)函数调用设置了一个标记,该标记命令cout显示true和false,而不是1和0
- 头文件cstdlib定义下,exit(EXIT_FAILURE)实现程序终止
- window文本文件的每行都以回车字符和换行符结尾,通常c++读取文件时将这两个字符转换为换行符并在写入文件时执行相反的转换。
- 布尔函数is_int() 使用climits文件中定义的两个字符常量(INT_MAX和INT_MIN)来确定参数是否位于适当的范围,非常适合作为条件
循环 与 分支语句 和 字符函数库cctype 文件简单处理的更多相关文章
- 学习笔记二十三——字符函数库cctype【转】
本文转载自: 字符函数库cctype 在头文件cctype(ctype.h)中定义了一些函数原型,可以简化输入确定字符是否为大写字母.数字.标点符号等工作. 例如: 如果ch是一个字母,则isalph ...
- 字符函数库 - cctype 和 climits 中的符号常量
一. C++从C语言中继承一个与字符相关的.非常方便的函数软件包,他可以简化诸如确定字符是否为大写字母‘数字.标点符号等工作,这些函数的原型在头文件cctype(老式的为ctype.h)中定义的.例如 ...
- C++学习笔记之字符函数库cctype
C++从C语言继承了一个与字符相关的.非常方便的函数软件包,它可以简化诸如确定字符是否为大写字母.数字.标点符号等工作,这些函数原型是在头文件cctype(老式风格ctype.h)中定义的. 下表对这 ...
- 字符函数库 cctype
<cctype> (ctype.h) Character handling functions This header declares a set of functions to cla ...
- C/C++知识总结 四 循环与分支语句
C/C++循环与分支语句 循环与分支语句的意义 关系运算符.逻辑运算符 for循环和嵌套for循环(基于范围for循环) while循环与do while循环 分支if语句.if else语句.if ...
- 【C语言入门教程】5.6 函数库和文件
函数库是为代码复用建立的,将同一类型,需要在不同的程序里使用的函数放置在一起,就组成了一个函数库.如 C 语言的标准库,它集合了开发者常用的函数.开发者自行编写的函数也可以组成函数库,通常称之为自定义 ...
- [C++ Primer Plus] 第6章、分支语句和逻辑运算符(一)程序清单
程序清单6.2 #include<iostream> using namespace std; void main() { char ch; cout << "Typ ...
- 【java开发】分支语句、循环语句学习
一.Java分支语句类型 if-else 语句 switch 关于if-esle语句可以拆分为三种 if语句 if(条件){语句块;} if-else语句if(条件语句){语句块;} if-else ...
- T_SQL编程赋值、分支语句、循环
咱们在C#中会常用到赋值.循环.分支语句什么的 今天咱们来看下当初在C#用到的一点东西放到SQL中是怎么使用的 创建变量 在C#中创建一个值类型变量很简单 int a:这就可以了 SQL: decla ...
随机推荐
- I/O:FileLock
FileLock: /* 文件锁定要么是独占的,要么是共享的.共享锁定可阻止其他并发运行的程序获取重叠的 独占锁定,但是允许该程序获取重叠的共享锁定.独占锁定则阻止其他程序获取任一类型的重叠锁 定.一 ...
- Jenkins Ci系列目录
Jenkins入门篇 1.Jenkins入门之界面概览 2.Jenkins入门之新建任务 3.Jenkins入门之导航操作 4.Jenkins入门之任务基本操作 5.Jenkins入门之执行Power ...
- 《VR入门系列教程》之2---VR头显
什么是虚拟现实? 虚拟现实的目标:让人们相信真实地处于一个虚拟世界中.要达到这个目标就得让人们的大脑(负责视觉和运动感知部分)欺骗他们.不同技术合在一起才可以创造这种幻觉,包括: 全立 ...
- 分析了京东内衣销售记录,告诉你妹子们的真Size!
>今天闲暇之余写了一个爬虫例子.通过爬虫去爬取京东的用户评价,通过分析爬取的数据能得到很多结果,比如,哪一种颜色的胸罩最受女性欢迎,以及中国女性的平均size(仅供参考哦~) 打开开发者工具-n ...
- java基础知识必备(一)
一,开发前奏 a.Java语言的发展历史. Java语言是美国Sun公司(Stanford University Network/斯坦福大学网络公司), 在199 ...
- html5教程 《实用技巧》—让你的网站变成响应式的3个简单步骤
如今,一个网站只在桌面屏幕上好看是远远不够的,同时也要在平板电脑和智能手机中能够良好呈现.响应式的网站是指它能够适应客户端的屏幕尺寸,自动响应客户端尺寸变化.在这篇文章中,我将向您展示如何通过3个简单 ...
- Ubuntu下Mongo的安装和笔记
在linux下的安装 打开https://www.mongodb.com/download-center#community选择linux然后选择自己的Version复制DOWNLOAD旁边的链接 打 ...
- springBoot的过滤器,监听器,拦截器
概述 在开发中,我们经常要考虑一些问题,对敏感词进行过滤,用户是否已经登录,是否需要对他的请求进行拦截,或者领导问现在在线人数有多少人?我们如何实现这些功能哪 @WebFilter package c ...
- 简易数据分析 08 | Web Scraper 翻页——点击「更多按钮」翻页
这是简易数据分析系列的第 8 篇文章. 我们在Web Scraper 翻页--控制链接批量抓取数据一文中,介绍了控制网页链接批量抓取数据的办法. 但是你在预览一些网站时,会发现随着网页的下拉,你需要点 ...
- Maven打包jar-打包jar时引入第三方jar