C++ 运算符

运算符

C++ 内置了丰富的运算符,我提供了以下类型的运算符:

算术运算符
关系运算符
逻辑运算符
位运算符
赋值运算符
杂项运算符

了解 C++ 中运算符的优先级

对比有括号和没有括号时的区别,这将产生不同的结果。因为 ()、 /、 * 和 + 有不同的优先级,高优先级的操作符将优先计算。

实例

//对比有括号和没有括号时的区别,这将产生不同的结果。因为 ()、 /、 * 和 + 有不同的优先级,高优先级的操作符将优先计算。

//# 了解 C++ 中运算符的优先级
//实例
#include <iostream>
using namespace std;
 
int main()
{
   int a = 20;
   int b = 10;
   int c = 15;
   int d = 5;
   int e;
 
   e = (a + b) * c / d;      // ( 30 * 15 ) / 5
   cout << "(a + b) * c / d 的值是 " << e << endl ;
 
   e = ((a + b) * c) / d;    // (30 * 15 ) / 5
   cout << "((a + b) * c) / d 的值是 " << e << endl ;
 
   e = (a + b) * (c / d);   // (30) * (15/5)
   cout << "(a + b) * (c / d) 的值是 " << e << endl ;
 
   e = a + (b * c) / d;     //  20 + (150/5)
   cout << "a + (b * c) / d 的值是 " << e << endl ;
  
   return 0;
}

他会出现以下结果

(a + b) * c / d 的值是 90
((a + b) * c) / d 的值是 90
(a + b) * (c / d) 的值是 90
a + (b * c) / d 的值是 50

运算符。

假设变量 A 的值为 60,变量 B 的值为 13,则:
&   	 如果同时存在于两个操作数中,二进制 AND 运算符复制一位到结果中。	(A & B) 将得到 12,即为 0000 1100

|	     如果存在于任一操作数中,二进制 OR 运算符复制一位到结果中。	 (A | B) 将得到 61,即为 0011 1101

^     	如果存在于其中一个操作数中但不同时存在于两个操作数中,二进制异或运算符复制一位到结果中。	(A ^ B) 将得到 49,即为 0011 0001

~	     二进制补码运算符是一元运算符,具有"翻转"位效果,即0变成11变成0(~A ) 将得到 -61,即为 1100 0011,一个有符号二进制数的补码形式。

<<	  二进制左移运算符。左操作数的值向左移动右操作数指定的位数。	A << 2 将得到 240,即为 1111 0000 

>>	   二进制右移运算符。左操作数的值向右移动右操作数指定的位数。	A >> 2 将得到 15,即为 0000 

谢谢观看!希望你们学到知识!请点赞!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值