C++学习第十七天----if语句

1.if else语句

ifelse;程序清单6.2; · 1eb666d · Kite/C和C++ - Gitee.com

        上述代码提出一个问题,假如++ch改为ch+1,会有什么现象?它不会再打印字符,而是打印字符对应的十进制数,这是为什么呢?它会进行一个数据类型精度提升,int比char精度高,所以会提升为整形。

        这里也说明了一个经验写法;

        if(x == 3)和if(3 == x)哪一种写法好?这也是一道经典面试题,答案是后者好,为什么好自己可以去探索一下。

2.逻辑表达式

·        逻辑或||,逻辑与&&,逻辑非!;前两个的逻辑运算符的优先级低于关系运算符,逻辑非的优先级高于所有的关系运算符和算术运算符;逻辑与的优先级高于逻辑或;

        逻辑或||,如果左侧的表达式为true,则右侧将不会再进行判定,结果就为真;

        逻辑与&&,如果左侧的表达式为false,则右侧将不会再进行判定,结果就为假;

注:我们可以不特意去记忆运算符的优先级高低,而使用括号,这样不易于出错,提高代码的可读性;

3.用&&来设置取值范围

        举例说明,if(age > 17 && age < 35),而不应该用if(17 < age < 35);

4.其他表达方式

        逻辑运算符还有别的表达方式:&& == and ; || == or ; !== not ;标识符and,or 和 not 都是c++保留字,它们不是关键字,它们不是c语言的保留字,但是c语言可以把它们用作运算符,只需要添加头文件iso646.h,c++不用添加头文件。

5.字符函数库cctype

        它可以简化诸如确定字符是否为大写字母,数字,标点符号等工作,这些函数的原型包含在头文件cctype(老式风格在ctype.h)中。

        下面列举几个函数:

 isalnum() : 如果参数是字母或数字,函数返回true;
 isalpha():如果参数是字母,返回true;
iscntrl():参数是控制字符,返回true;
isdigit():参数是数字(0-9),返回true;
islower():参数是小写字母,返回true;
……

你可能感兴趣的:(c++,学习,开发语言)