二级C++精品课程3,第1张

二级C++精品课程3,第2张

运算符是指运算的符号,如加法运算符(+)、乘法运算符(*)、地址运算符(&)。它离不开表达式运算符。它由一个运算符和一个操作数组成,运算符指定要对操作数执行的运算。表达式的结果是一个值。本章将介绍C++语言的基本运算符和表达式,各种运算符的优先级和组合,以及不同数据类型的值之间的转换。

C++语言中的运算符是C++语言编译器能够识别的具有运算意义的符号。编译器将这些符号及其表达式翻译成相应的机器代码,计算机可以运行这些代码以获得正确的结果。
其实就像我们日常生活中很多东西的名字一样,比如冰箱、电视等代表不同功能的电器,运算符就是C++语言中代表各种计算功能的名字。这些名字是由制定C++语言规范的人决定的。下面是一些由运算符组成的表达式的例子:
下面是一些表达式的例子。比如:
100+200-300 * 200+1000/20+100% 10
a | | b & & c | | d
a = b+c+d * e

C++提供的运算符有:算术运算符、关系运算符、逻辑运算符、按位运算符、条件运算符、赋值运算符、逗号运算符、sizeof运算符和其他运算符(这是按函数划分的)。对于不同的运算符,要指定的操作数的数量是不同的。根据运算符所需操作数的多少,运算符可分为三种类型:一元运算符(一个操作数)、双目运算符(两个操作数)和三元运算符(三个操作数)。下面,我们介绍几种基本的C++运算符。
3.1.1算术运算符
C++提供了五种基本的算术运算符,见表3-1。

表3-1五种基本算术运算符示例
运算符名称
+加12+4.9 //得16.9
-减3.98-4 //得-0.02
*乘2 * 3.4 //得6.8 [


这五个算术运算符都是双目运算符。除了%运算符,其他算术运算符的两个操作数可以是整型(short int、int、long int、unsigned short int、unsigned int或unsigned long int)和实型(float或double)的混合类型。运算结果的数据类型为:两个操作数的数据类型中,级别较高的数据类型(数据类型的级别见3.3节)。比如int操作数和float操作数的运算结果是float;浮点操作数和双操作数的运算结果是双精度的。

当除法运算符(/)的两个操作数都是整数时,结果总是四舍五入为整数。比如:
9/2 // 4,而不是4.5!
-9/2 // Get -5,而不是-4!
在编程中,我们有时可以使用整数除法来得到想要的结果,但也容易出错。如果两个操作数都是整数,要得到实数除法,就要把两个或任意整数操作数强制转换成实数,例如:
int cost = 100;
int volume = 80;
double单价=成本/ (double)量;//Get 1.25
进行除法运算时,如果除数为零,程序运行时会产生被零除的误差。
余数运算符(%)的两个操作数都必须是整数,运算结果是除法运算后的余数。比如13%3的结果是1。
算术运算的结果可能太大,无法存储在指定的变量中,这种情况称为溢出。例如:
unsigned char k = 10 * 92;//溢出:920 > 255

进行除运算时,要注意操作数正确,即除数不能为零,否则会出现浮点运算错误。编程时,我们通常用if语句来判断除数是否为0,例如:
if (a!= 0) //只有当a不等于0时,才进行如下操作
c = b/a;
“%”是一个余数运算符,用于将它前面的整数值或表达式除以它后面的整数值或表达式。结果是不能被后面的整数或表达式整除的最小整数,后面的值应该是大于1的正整数。如表所示,“13%7”是指13除以7,大于6。
以上运算符都是双目运算符,左右操作数可以是数值,也可以是表达式。根据左右操作数的类型会产生不同的结果。比如9/4 = 2,而9/4.0 = 2.5,9.0/4 =2.5,9.0/4.0 = 2.5。
但是“%”运算符的左右操作数必须是整数,否则会产生编译错误。
同时需要注意的是,加法和乘法可能会超过计算机所能表示的数,导致溢出。比如:1.e307 * 1.e307会产生一个不确定的数,也就是计算机无法表示的数。下表列出了计算机表示的常见数据类型的值。表3-2
类型最小值
有符号Char-128+127
无符号Char0+255
有符号Short-32768+32767
无符号Short 0+65535 [有符号long-2147483648+2147483647
无符号long 0+4294967295
Float-3.44它们之间的类型转换需要特别注意

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » 二级C++精品课程3

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情