C /C++の単項演算子
ここでは、C /C++の単項演算子を見ていきます。単項演算子は、単一のオペランドに作用して新しい値を生成する演算子です。単項演算子は次のとおりです。
演算子 | 説明 |
---|---|
間接演算子(*) | ポインタ変数を操作し、ポインタアドレスの値と同等のl値を返します。これは、ポインタの「逆参照」と呼ばれます。 |
演算子のアドレス(&) | 単項アドレス演算子(&)は、そのオペランドのアドレスを取ります。アドレスオブ演算子のオペランドは、関数指定子またはビットフィールドではなくレジスタストレージクラス指定子で宣言されていないオブジェクトを指定するl値のいずれかです。 |
単項プラス演算子(+) | 単項プラス演算子(+)の結果は、そのオペランドの値です。単項プラス演算子のオペランドは、算術型である必要があります。 |
単項否定演算子(-) | -(単項マイナス)演算子は、オペランドの値を否定します。オペランドは任意の算術型にすることができます。結果は左辺値ではありません。 |
論理否定演算子(!) | 論理否定演算子(!)は、そのオペランドの意味を逆にします。オペランドは、算術型またはポインター型(または算術型またはポインター型に評価される式)である必要があります。オペランドは暗黙的にbool型に変換されます。 |
1の補数演算子(〜) | 「ビット単位の補数」または「ビット単位のNOT」演算子と呼ばれることもある1の補数演算子は、そのオペランドのビット単位の1の補数を生成します。オペランドは整数型でなければなりません。 |
プレフィックスインクリメント演算子(++) | プレフィックスインクリメント演算子(++)は、オペランドに1を追加します。この増分値は、式の結果です。オペランドは、const型ではないl値でなければなりません。結果は、オペランドと同じタイプのl値です。 |
プレフィックスデクリメント演算子(-) | プレフィックスデクリメント演算子(-)は、オペランドから1を減算します。このデクリメントされた値は、式の結果です。オペランドは、const型ではないl値でなければなりません。結果は、オペランドと同じタイプのl値です。 |
キャスト演算子() | 型キャストは、特定の状況でオブジェクトの型を明示的に変換するためのメソッドを提供します。コンパイラーは、型キャストが行われた後、キャスト式を型タイプ名として扱います。 |
sizeof演算子 | これは、オペランドのサイズを計算するために使用できるコンパイル時の単項演算子です。 |
新しい演算子 | これは、メモリを動的に割り当てるために使用されるメモリ割り当て演算子です。 |
削除演算子 | 動的に割り当てられたメモリの割り当てを解除するために使用されるメモリ割り当て演算子です。 |
これらの演算子には、右から左への結合性があります。単項式には通常、接尾辞または一次式の前にある構文が含まれます
-(マイナス)およびcasting()単項演算子の例を見てみましょう。
例
#include<iostream> using namespace std; int main() { int x; float y = 1.23; x = (int) y; x = -x; cout << x; return 0; }
出力
-1
-
C++の論理演算子
論理演算子の概念は単純です。これらにより、プログラムは複数の条件に基づいて決定を下すことができます。各オペランドは、真または偽の値に評価できる条件と見なされます。次に、条件の値を使用して、op1演算子op2または!op1グループ化の全体的な値を決定します。 論理OR演算子(||)は、一方または両方のオペランドがtrueの場合はブール値trueを返し、それ以外の場合はfalseを返します。オペランドは、評価の前に暗黙的にbool型に変換され、結果はbool型になります。論理ORには、左から右への結合性があります。論理OR演算子のオペランドは同じ型である必要はありませんが、整数型またはポインター
-
C++の算術演算子
C++には5つの基本的な算術演算子があります。彼らは- 追加(+) 減算(-) 分割(/) 乗算(*) モジュロ(%) 例 これらの演算子は、C++の任意の算術演算を操作できます。例を見てみましょう- #include <iostream> using namespace std; main() { int a = 21; int b = 10; int c ; c = a + b; cout << "Line 1 - Va