C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++のさまざまなタイプの演算子


C++には多くの種類の演算子があります。これらは、算術、リレーショナル、論理、ビット単位、割り当て、およびその他の演算子として大まかに分類できます。

算術演算子

変数Aが10を保持し、変数Bが20を保持すると仮定すると、-

オペレーター
説明
+
2つのオペランドを追加します。 A+Bは30を与えます
-
最初のオペランドから2番目のオペランドを減算します。 A-Bは-10を与えます
*
両方のオペランドを乗算します。 A*Bは200を与えます
/
分子を分子から除算します。 B/Aは2を与えます

モジュラス演算子と整数除算後の余り。 B%Aは0を与えます
++
インクリメント演算子。整数値を1つ増やします。 A++は11を与えます
-
デクリメント演算子。整数値を1つ減らします。 A--は9を与えます


関係演算子

変数Aが10を保持し、変数Bが20を保持すると仮定すると、-

オペレーター
説明
==
2つのオペランドの値が等しいかどうかをチェックし、等しい場合は条件が真になります。 (A ==B)は真ではありません。
!=
2つのオペランドの値が等しいかどうかをチェックし、値が等しくない場合、条件はtrueになります。(A!=B)はtrueです。
>
左のオペランドの値が右のオペランドの値より大きいかどうかを確認します。大きい場合、条件はtrueになります。(A> B)はtrueではありません。
<
左のオペランドの値が右のオペランドの値よりも小さいかどうかをチェックし、そうであれば条件が真になります。(A
> =
左のオペランドの値が右のオペランドの値以上かどうかをチェックします。はいの場合、条件は真になります。(A> =B)は真ではありません。
<=
左のオペランドの値が右のオペランドの値以下であるかどうかをチェックします。はいの場合、条件はtrueになります。(A <=B)はtrueです。


論理演算子

変数Aが1を保持し、変数Bが0を保持すると仮定すると、-

オペレーター
説明
&&
論理AND演算子と呼ばれます。両方のオペランドがゼロ以外の場合、条件はtrueになります。(A &&B)はfalseです。
||
論理OR演算子と呼ばれます。 2つのオペランドのいずれかがゼロ以外の場合、条件はtrueになります。(A || B)はtrueです。

論理否定演算子と呼ばれます。オペランドの論理状態を逆にするために使用します。条件がtrueの場合、Logical NOT演算子はfalseになります。!(A &&B)はtrueです。


ビット演算子

ビット演算子はビットを処理し、ビットごとの演算を実行します。 &、|、^の真理値表は次のとおりです。

pqp & qp | qp ^ q
00000
01011
11110
10011


A=60であると仮定します。およびB=13;バイナリ形式になりましたが、次のようになります-

A = 0011 1100
B = 0000 1101
-----------------
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~A  = 1100 0011


オペレーター
説明

バイナリAND演算子は、両方のオペランドに存在する場合、結果にビットをコピーします。(A&B)は12を返します。これは00001100です。
|
バイナリOR演算子は、いずれかのオペランドに存在する場合、ビットをコピーします。(A | B)は61を返します。これは00111101です。
^
バイナリXOR演算子は、ビットが一方のオペランドに設定されているが両方に設定されていない場合、ビットをコピーします。(A ^ B)は49を返します。これは00110001です。

Binary Ones Complement Operatorは単項であり、ビットを「反転」させる効果があります。(〜A)は、符号付き2進数により、2の補数形式で11000011である-61を返します。 。
<<
バイナリ左シフト演算子。左のオペランドの値は、右のオペランドで指定されたビット数だけ左に移動します。A<<2の場合、240は11110000になります。
>>
バイナリ右シフト演算子。左のオペランドの値は、右のオペランドで指定されたビット数だけ右に移動します。A>> 2は、15、つまり00001111になります。


代入演算子


オペレーター
説明
=
単純な代入演算子。右側のオペランドから左側のオペランドに値を代入します。C=A + Bは、A+Bの値をCに代入します。
+ =
AND代入演算子を追加します。これは、右のオペランドを左のオペランドに追加し、結果を左のオペランドに割り当てます。C+=AはC=C+Aと同等です。
-=
AND代入演算子を減算します。左オペランドから右オペランドを減算し、その結果を左オペランドに割り当てます。C-=AはC=C-Aと同等です。
* =
乗算AND代入演算子。右オペランドと左オペランドを乗算し、その結果を左オペランドに代入します。C*=AはC=C*Aと同等です。
/ =
AND代入演算子を除算します。左オペランドを右オペランドで除算し、結果を左オペランドに代入します。C/=AはC=C/Aと同等です。
%=
モジュラスAND代入演算子。2つのオペランドを使用してモジュラスを取り、結果を左側のオペランドに割り当てます。C%=AはC=C%Aと同等です。
<<=
左シフトAND代入演算子。C<<=2はC=C<<2と同じです。
>> =
右シフトAND代入演算子。C>>=2はC=C>>2と同じです。
&=
ビット単位のAND代入演算子。C&=2はC=C&2と同じです。
^ =
ビット単位の排他的論理和と代入演算子。C^=2はC=C^2と同じです。
| =
ビット単位の包含ORおよび代入演算子。C|=2はC=C|と同じです。 2

その他の演算子


Sr.No
オペレーター
1 sizeof演算子 変数のサイズを返します。たとえば、sizeof(a)。ここで、「a」は整数であり、4を返します。
2 条件演算子(?:) Conditionがtrueの場合、Xの値を返し、それ以外の場合はYの値を返します。
3 カンマ演算子 一連の操作が実行されます。コンマ式全体の値は、コンマ区切りリストの最後の式の値です。
4 (ドット)および→ (矢印)メンバー演算子は、クラス、構造体、および共用体の個々のメンバーを参照するために使用されます。
5 () -キャスト演算子は、あるデータ型を別のデータ型に変換します。たとえば、int(2.2000)は2を返します。
6 ポインタ演算子&は変数のアドレスを返します。たとえば、&a;変数の実際のアドレスを示します。
7 ポインタ演算子 *は変数へのポインタです。たとえば、* var;変数varをポインタします。


  1. PythonのさまざまなID演算子タイプは何ですか?

    各Pythonオブジェクトには、メモリに保存されるときに一意の識別番号が割り当てられます。 id()関数で取得できます。 is演算子は、2つのオブジェクトのid()を比較し、両方のオブジェクトの値が同じ場合はTrueを返し、それ以外の場合はfalseを返します。 一方、is not演算子は、オブジェクトのid()が同じ場合はfalseを返し、それ以外の場合はtrueを返します。次のインタプリタアクティビティは、動作を示します- >>> a = 10 >>> b = a >>> id(a), id(b) (1581561184, 158

  2. Pythonのさまざまな基本演算子は何ですか?

    Pythonの演算子は-に分類されます 算術演算子 +追加 -減算用 *乗算用 /除算用 //フロア分割用 モジュロまたは剰余の% 関係演算子 以上の場合 =以上の場合 <未満の場合 <=以下の場合 ==forは等しい !=forはと等しくありません 論理演算子 および-両方のオペランドがtrueの場合にのみtrue または-1つのオペランドがtrueの場合でもtrue not-オペランドがfalseの場合はtrue、その逆の場合 ビット演算子 &ビット単位のAND |ビットごとのOR 〜ビット単位ではない ^ビット単位のXORの場合 ビット単位の右シフト <<ビット単位の