C++运算符
Kinght_123 人气:0一、算术运算符
运算符 | 描述 |
---|---|
+ | 把两个操作数相加 |
- | 从第一个操作数中减去第二个操作数 |
* | 把两个操作数相乘 |
/ | 分子除以分母 |
% | 取模运算符,整除后的余数 |
++ | 自增运算符,整数值增加 1 |
– | 自减运算符,整数值减少 1 |
通过下面的例子可以让我们更好的理解C++中的运算符的意义与使用方法。
#include <iostream> using namespace std; int main() { int a = 66; int b = 33; int c; c = a + b; cout << "a + b 的值是 " << c << endl ; c = a - b; cout << "a - b 的值是 " << c << endl ; c = a * b; cout << "a * b 的值是 " << c << endl ; c = a / b; cout << "a / b 的值是 " << c << endl ; c = a % b; cout << "a % b 的值是 " << c << endl ; return 0; }
输出:
a + b 的值是 99
a - b 的值是 33
a * b 的值是 2178
a / b 的值是 2
a % b 的值是 0
注意:需要知道a++和++a的区别(a–一样)
a++ :a先进行赋值,然后再进行++运算。
++a :a首先进行++运算,然后赋值给a。
下面的代码可以更好的展示他们两个的关系:
#include <iostream> using namespace std; int main() { int z = 1; cout << z++ << endl; int h = 1; cout << ++h; return 0; }
输出:
1
2
二、关系运算符
运算符 | 描述 |
---|---|
== | 检查两个操作数的值是否相等,如果相等则条件为真。 |
!= | 检查两个操作数的值是否相等,如果不相等则条件为真。 |
> | 检查左操作数的值是否大于右操作数的值,如果是则条件为真。 |
< | 检查左操作数的值是否小于右操作数的值,如果是则条件为真。 |
<= | 检查左操作数的值是否大于或等于右操作数的值,如果是则条件为真。 |
>= | 检查左操作数的值是否小于或等于右操作数的值,如果是则条件为真。 |
#include <iostream> using namespace std; int main() { int a = 21; int b = 10; int c ; if( a == b ) { cout << "a 等于 b" << endl ; } else { cout << "a 不等于 b" << endl ; } if ( a < b ) { cout << "a 小于 b" << endl ; } else { cout << "a 不小于 b" << endl ; } if ( a > b ) { cout << "a大于 b" << endl ; } else { cout << "a 不大于 b" << endl ; } return 0; }
输出:
a 不等于 b
a 不小于 b
a大于 b
下面的代码可以让我们更好的理解逻辑运算符:
#include <iostream> using namespace std; int main() { int a = 10; int b = 20; int c = 30; int d = 100; if( a == b || c < d) cout << "6666" << endl; else cout << "66-----66" << endl; if( a < b && b < c && d < c) cout << "7777" << endl; else cout << "77-----77" << endl; if( !(a == b || c == d)) cout << "8888" << endl; else cout << "88-----88" << endl; return 0; }
输出:
6666
77-----77
8888
三、逻辑运算符
运算符 | 描述 |
---|---|
&& | 称为逻辑与运算符。如果两个操作数都 true,则条件为 true。 |
丨丨 | 称为逻辑或运算符。如果两个操作数中有任意一个 true,则条件为 true。 |
! | 称为逻辑非运算符。用来逆转操作数的逻辑状态,如果条件为 true 则逻辑非运算符将使其为 false。 |
四、位运算符
p | q | p&q | p丨q | p^q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 0 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
- &:表示位与操作
- 丨:表示位或操作
- ^ :表示异或操作
五、赋值运算符
运算符 | 描述 |
---|---|
= | 简单的赋值运算符,把右边操作数的值赋给左边操作数 |
+= | 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 |
-= | 减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数 |
*= | 乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数 |
/= | 除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数 |
%= | 求模且赋值运算符,求两个操作数的模赋值给左边操作数 |
<<= | 左移且赋值运算符 |
>>= | 右移且赋值运算符 |
&= | 按位与且赋值运算符 |
^= | 按位异或且赋值运算符 |
丨= | 按位或且赋值运算符 |
六、杂项运算符
sizeof-----sizeof 运算符返回变量的大小。例如,sizeof(a) 将返回 4,其中 a 是整数。
Condition ? X : Y-----如果 Condition 为真 ? 则值为 X : 否则值为 Y。
.(点)和 ->(箭头)-----成员运算符用于引用类、结构和共用体的成员。
Cast-----强制转换运算符把一种数据类型转换为另一种数据类型。例如,int(2.2000) 将返回 2。
&------指针运算符 & 返回变量的地址。例如 &a; 将给出变量的实际地址。
*------指针运算符 * 指向一个变量。例如,*var; 将指向变量 var。
加载全部内容