- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第3章C程序设计(第2版)
第3章 运算符和表达式 本章主要内容 3.1 基本运算符 3.2 表 达 式 3.3 运算符优先级和结合性 3.4 类 型 转 换 3.1 基本运算符 3.1.1 算术运算符 3.1.2 关系运算符 3.1.3 逻辑运算符 3.1.4 位运算符 3.1.5 赋值运算符 3.1.6 逗号运算符 3.1.7 三目运算符 3.1.8 自增、自减运算符 3.1.9 sizeof运算符 3.1.1 算术运算符 C++语言提供了7个算术运算符:+(正)、-(负)、+、-、*、/、%。其中包括单目运算符和双目运算符。 C++中含有以下单目算术运算符: - 负数运算符 + 正数运算符 +(取正)与- (取负)运算符用于对操作数取正和取负操作,取正的操作结果与操作数相同,取负操作的是将操作数变成原值的相反数。 C++中含有以下双目算术运算符: + 加法运算符 – 减法运算符 * 乘法运算符 / 除法运算符 % 求模运算符(也称为求余运算符) 3.1.2 关系运算符 关系运算符完成两个操作数的比较运算。C++中提供了6个关系运算符: (小于)、= (小于等于)、 (大于)、= (大于等于)、== (等于)、!= (不等于)。它们都是双目运算符。运算的结果为一整数,当关系成立时,其运算结果为整数1(逻辑真);当关系不成立时,其运算结果为整数0(逻辑假)。关系运算的结果可作为一个整数参与表达式的运算。 关系运算符的两个操作数可以是任意的基本类型的数据。由于实数在计算机内进行运算和存储时,都会产生误差,在进行两个实数的比较时,不能采用精确的比较(直接比较两数的大小)。 3.1.3 逻辑运算符 逻辑运算符把各个运算的变量(或常量)连接起来组成一个逻辑表达式,包括逻辑非(!)、逻辑与()、逻辑或(||)三种逻辑运算符。 其中:逻辑非是单目运算符,其只要求有一个运算量。逻辑与和逻辑或都是双目运算符,要求有两个运算量。当操作数(变量)为真时,逻辑非运算的结果则为假。对于逻辑与运算符,只有当两个操作数都为真时,逻辑与运算的结果则为真。对于逻辑或操作符只要有一个操作数为真,则逻辑或运算的结果就为真。 逻辑运算符的运算优先级为:! 高于 高于 ||。!的优先级高于算术运算符,和||的优先级比关系运算符低。 3.1.4 位运算符× C++中提供了按位与()、按位或(|)、按位异或(^)、移位运算符(,)和取反运算符(~)。其中、|、~、^ 统称为按位逻辑运算符。 1. 按位逻辑运算符 1)取反运算符“~”是一元运算符,它是对其操作数进行二进制逐位取反运算,若二进制位为0,则取反后为1;若二进制位为1,则取反后为0。 2)按位逻辑与“”是二元运算符,参加运算的两个操作数按二进制位进行“与”运算,若两个数相应的二进制位都为1,则该位的结果值为1,否则为0。 3)按位逻辑或“|”也是二元运算符,参加运算的两个操作数按二进制位进行“或”运算,若两个数相应的二进制位有一个为1,则该位的结果值为1,否则为0。 4)按位异或“^”也称XOR运算符,其运算规则是:将两个操作数逐位进行运算,若对应位不同,则该位结果为1,否则为0。 2. 移位运算符 移位运算符是二元运算符,其包括左移运算符和右移运算符两种。 1)左移运算符的使用格式是operationn(其中n为整数),其作用相当于将operation乘以2的n次方。但是此结论只适用于该数左移时被溢出舍弃的高位中不包括1的情况。 2)右移运算符的使用格式是 operationm(其中m为整数),其作用相当于将operation的各个二进制位右移m位。 当左移时,对于带符号数,最高位表示符号,可能会因为低位的1或0移到最高位,最终改变操作数的符号。 当进行右移操作时,操作数右移m个二进制位后,左边移出的空位用符号位补齐,最高位始终补和原来的最高位相同的数。 位运算符的运算优先级为(括弧中运算符的优先级相同):~高于(、)高于高于^高于|。 3.1.5 赋值运算符 C++语言提供了两类赋值运算符,即基本赋值运算符和复合赋值运算符。基本赋值运算符为“=”,复合赋值运算符有+=、-=、*=、/=、%=、=、=、=、^=、|=。赋值运算符作用是将一个数
文档评论(0)