cctype字符函数库
基本文件输入/输出
设计一个智能程序的关键是使程序具有决策能力。(决策设计,包括 循环 分支 语句等)
分支语句:if 语句、条件运算符、switch语句 。(使用 逻辑运算符 可将多个判定条件进行组合)
当程序需决定是否执行某个操作时,通常使用if语句来进行选择。(if语句 是模仿英语中的if语句进行设计的)
if 的判定条件 (0 为false,非0为true)
if语句内可以嵌套其他语句(包括if语句)
if elseif else 语句 本质就是 if else {if else}
在进行 == 判断时, 通常反写来过滤 误用 = 的情况。(因为a==3 和 3==a 都是是有效的语句,但 3=a 语句是无效的)
与或非 这三种逻辑运算符 用于对各种条件进行组合 (C++ 中 三种表达式的符号分别为 || 、&&、 !,也可用 and 、or、not关键字代替这三个符号)
程序中 长字符串 书写的时候可以 用 \n 拆分成多行
逻辑运算符 冒号 逗号 都是顺序点(也就是说,先执行左边的表达式语句, 然后再在此基础上执行右边的表达式语句)
程序中如果想要表达 a<b<c ,应该使用 a<b && b<c。(不能直接写 a<b<c,因为这样实际上相当于 (a<b)<c )
!后面如果跟 false或0 则结果为 true,如果!后面跟true 或 非0值 则结果为false
例如!strcmp(s1,s2)为true时,这两个字符串相同。( 如果两个字符串相同 则 strcmp(s1,s2)返回0)
double类型足以存储所有的int(也可以存储超过范围的int)
逻辑运算符中 ||、&& 优先级低于关系运算符(< 、> 、=等),并且 && 优先级高于 ||。而!的优先级高于所有的关系运算符和算术运算符。
为了简化对优先级的检查,尽量多使用括号进行优先级的划分(不论是否需要括号)
C++中,从左向右计算逻辑表达式(并且通过左边的条件语句能够确定表达式的结果,就不会执行右边的条件语句)。
C++从C语言继承了一个与字符相关的包(cctype函数库),这个包里有许多函数,比如 isalpha用于判定字符是否是字母,ispunct用于判定字符是否是标点符号(逗号、句号等)。isdigits用于判断字符是否为数字,isspace()用于判断字符是否为空白(换行、空格、制表符等),还有很多其他可以直接使用的函数。
C++中常用条件运算符(?:)来代替 if else语句。(条件运算符也是C++中唯一一个需要3个操作数的运算符)。
当面临多个选择时,可以用if else实现,但更多的使用switch语句
switch语法:switch(整数值或结果为整数值的表达式){case 整数值或结果为整数值的表达式 :可执行语句;case ~;case ~;default:可执行语句}。(默认情况下,从第一个匹配的case开始,执行 第一个匹配的case语句以及它之后的所有case语句)
枚举变量在和int类型变量进行 比较或运算时,会自动转换为int类型。
if语句相比switch更强大。(switch语句只能对一个确定的 整数值 进行判别。因此如果 设计到 对取值范围 浮点数等条件的判断,应使用 if 语句)。
在二者都可以使用的情况下,switch相比if语句效率更高。
break语句 可用于 switch语句 和 循环语句中。
continue语句只应用于循环语句中。
C++和C一样 有goto语句,该语句的语法为:goto 标签;~;~;~;标签:~;