《C++语言入门经典》一2.4 运算符

2.4 运算符

运算符就是具有运算功能的符号。C++语言中有丰富的运算符,其中有很多都是从C语言
继承下来的,它新增的运算符有作用域运算符(::),成员指针运算符(->)。
和C语言一样,根据使用运算符的对象个数,C++语言中可以将运算符分为单目运算符、
双目运算符和三目运算符。根据使用运算符的对象之间的关系,可以将运算符分为算术运算
符、关系运算符、逻辑运算符、赋值运算符、位运算符、移位运算符、sizeof 运算符、条件运
算符和逗号运算符。

2.4.1 算术运算符

算术运算主要是指常用的加(+)、减(-)、乘(*)、除(/)四则运算符,以及模运算
(%)和自增加运算(++)、自减少(--),算术运算符中有单目运算符和双目运算符。算术
运算符及其功能如表2.8所示。

说明expr表示使用运算符的对象,可以是表达式、变量和常量。

1)+是加法运算符,可以进行两个对象的加法运算,例如:1+1表示两个常量相加;i+1表
示变量和常量相加;x+y表示两个变量相加;+100表示有符号的常量,强调常量是正数。
2)-是减法运算符,可以进行两个对象的减法运算,例如:1-1表示两个常量相减;j-1表

示变量和常量相减;x-y表示两个变量相减;-100表示有符号的常量,强调常量是一个负值。
3)是乘法运算符,可以进行两个对象的乘法运算,例如:23表示两个常量相乘。
4)/是除法运算符,可以对两个对象进行除法运算,例如:2/3表示两个常量相除。/运算

符左侧的是被除数,也称分子;/运算符右侧的是除数,也称为分母。
在进行除法运算时,除数或分母不可以为0,若为0,则会产生溢出,处理器抛出异常。例

如:2/0是不合法运算;而0/2是合法运算,计算结果是0。
两个整型数值进行除法运算时返回的结果可能是一个小数,小数点后的数值会被舍去。
5)%是模运算符,求两个整型的数值或变量在进行除法运算后的余数。例如:5/2表示两

个常量进行求模运算,计算结果是1。

6)++是自加运算符,属于单目运算符。有++expr和expr++两种形式,++expr表示expr自身
加1后再进行其他运算;expr++表示expr先参加完其他运算后再进行自身加1,expr只能是变量。
例如:i++表示i自增1后再参与其他运算;++i表示i参与运算后,i的值再自增;1++不合法。

7)--是自减运算符,属于单目运算符。有--expr和expr--两种形式,--expr表示expr自身
减1后再进行其他运算;expr--表示expr先参加完其他运算后再进行自身减1,expr只能是变量。
例如:i--表示i自减1后再参与其他运算;--i表示i参与运算后,i的值再自减;1--不合法。

2.4.2 关系运算符

关系运算主要是对两个对象进行比较,运算结果是逻辑常量真或假。关系运算符及其功能
如表2.9所示。

1)<用于比较两个对象的大小,前者小于后者,运算结果为真。例如:a<b表示两个变量
进行比较,如果变量a的值小于变量b的值,运算结果为真;2<1的运算结果为假。

2)>用于比较两个对象的大小,前者大于后者,运算结果为真。例如:a>b表示两个变量
进行比较,如果变量a的值大于变量b的值,运算结果为真;2>1的运算结果为真。

3)>=用于比较两个对象的大小,前者大于或等于后者,运算结果为真。例如:3>=2的运
算结果为真;2>=2的运算结果为真。

4)<=用于比较两个对象的大小,前者小于或等于后者,运算结果为真。例如:1<=2的运
算结果为真。

5)==用于对两个对象进行判断,前者恒等于后者,运算结果为真。例如:a==b表示两个

变量进行比较,如果变量a的值恒等于变量b的值,运算结果为真。
6)!=用于对两个对象进行判断,前者不等于后者,运算结果为真。例如:a!=b 表示两个
变量进行比较,如果变量a的值不等于变量b的值,运算结果为真。
关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算
符,高于赋值运算符。在6个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==
和!=的优先级相同。

时间: 2024-09-30 13:09:13

《C++语言入门经典》一2.4 运算符的相关文章

《C++语言入门经典》一第2章 与计算机交流的手段——数据的计算、输入与输出2.1 C++语言基本要素

第2章 与计算机交流的手段--数据的计算.输入与输出 视频讲解:128分钟 通过鼠标.键盘等设备,我们可以将指令发送给计算机,而计算机会将执行结果显示出来.这就是输入与输出.输入设备的信号,显示器上体现的图形.文字,甚至喇叭发出的声音在计算机中的体现都是数据,它是计算机信息的载体. 通过学习本章,读者可以达到以下学习目的: C++语言的基本要素 数据类型 数据的输入与输出 运算符 结合性和优先级 表达式 语句.左值与右值 2.1 C++语言基本要素 通常程序设计语言的基本要素包括标识符.关键字.

《C++语言入门经典》一1.2 Visual Studio 2010 集成编译环境

1.2 Visual Studio 2010 集成编译环境 C++的开发环境有很多种,例如,常见的Visual C++ 6.0 等.Visual Studio 2010 是微软公司继Visual C++ 6.0 之后新设计的集成开发环境,它更加支持C++标准规范,对新标准--C++0x 提供全面的支持.下面就来介绍它的使用方法. 1.2.1 安装Visual Studio 2010 在安装Visual Studio 2010 之前,首先要了解安装Visual Studio 2010 的必备条件,

《C++语言入门经典》一2.2 数据类型

2.2 数据类型 C++语言中常用的数据类型有数值类型.字符类型.数组类型.布尔类型.枚举类型.结 构体类型.共用体类型.指针类型.引用类型和自定义类型.本节将详细介绍这些数据类型. 2.2.1 数值类型 在C++语言中,数值类型主要分为整型和实型(浮点类型)两类.其中,整型按符号划分 可以分为有符号型和无符号型两类:按长度划分可以分为普通整型.短整型和长整型三类,整 型的分类如表2.2所示. 在程序中使用实型数据时需要注意以下两点. (1)实数的相加 实型数据的有效数字是有限制的,如单精度fl

《C++语言入门经典》一导读

前 言 C++语言是在C语言的基础上发展起来的,它在C语言的基础上融合了许多新的有利于程序开发的编程理念.C++语言是一种规范,它规范了程序员如何进行面向对象的程序开发. C++语言还具有C语言底层操作的能力,同时具备高效率代码重用的面向对象技术.C++语言的特点是语句灵活.使用简洁.技术全面. 目前,关于C+ +语言的书籍有很多,但是真正从初学者的角度出发并把技术及应用讲解透彻的并不是很多.本书从初学者的角度出发,为想要学习C+ +编程.使用C+ +从事软件开发的初中级程序开发人员.编程爱好者

《C++语言入门经典》一2.10 小结

2.10 小结 本章详细介绍了C++语言的基本数据类型.运算符和表达式等,希望通过本章的学习,读者能够熟练地掌握C++的基础知识,理解书中涉及的C++语言的一些特性和高级用法,积累C++语言的开发经验.

《C++语言入门经典》一第3章 重要的逻辑工具——判断与循环 3.1 条件判断

第3章 重要的逻辑工具--判断与循环 视频讲解:90分钟 一个大的问题需要分成若干个小的问题才能够得到解决.C++语言提供了分支语句与循环语句.当需要一个条件影响到问题的结论时,我们需要判断语句:当需要执行若干个相同的指令时,我们需要循环语句. 通过学习本章,读者可以达到以下学习目的:掌握3种形式的判断语句了解条件运算符与判断语句的转换掌握switch分支语句掌握判断语句的嵌套了解3种循环语句掌握各种循环的区别了解循环的跳转掌握循环的嵌套 3.1 条件判断 计算机的主要功能是提供计算功能,但在计

《C++语言入门经典》一2.3 数据的输入与输出

2.3 数据的输入与输出 在用户与计算机交互的过程中,数据输入和数据输出是必不可少的操作过程,计算机需要通过输入获取来自用户的操作指令,并通过输出来显示操作结果.本节将介绍数据输入与输出的相关内容. 2.3.1 格式输出函数 C++语言中保留了C语言中的屏幕输出函数printf.使用printf可以将任意数量和类型的数据输出到屏幕.printf函数的作用是向终端(输出设备)输出若干任意类型的数据.printf函数的一般格式为:printf(格式控制,输出列表) 括号内包括格式控制和输出列表两部分

《C++语言入门经典》一1.4 小结

1.4 小结 本章简单介绍了C++语言的发展情况和集成环境Microsoft Visual Studio 2010 的使用方法, 并编写了一个简单的HelloWorld 程序,使刚刚接触编写程序的读者熟悉C++项目从编写到运行的流程.

《C++语言入门经典》一2.5 结合性和优先级

2.5 结合性和优先级 运算符的优先级决定了表达式中的各个运算符执行的先后顺序.高优先级运算符要先于低优先级运算符进行运算.例如,根据先乘除后加减的原则,表达式"a+bc"会先计算bc,得到的结果再与a相加.在优先级相同的情况下,则按从左到右的顺序进行计算.当表达式中出现括号时,会改变优先级.先计算括号中的子表达式值,再计算整个表达式的值.运算符的结合方式有两种,即左结合和右结合.左结合表示运算符优先与其左边的标识符结合进行运算,如加法运算:右结合表示运算符优先与其右边的标识符结合,如