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

C++での演算子の優先順位


演算子の優先順位は、式内の用語のグループ化を決定します。演算子の結合性は、括弧がない場合に同じ優先順位の演算子をグループ化する方法を決定するプロパティです。これは、式の評価方法に影響します。特定の演算子は他の演算子よりも優先されます。たとえば、乗算演算子は加算演算子よりも優先されます:

たとえば、x =7 + 3 * 2;ここでは、演算子*の優先順位が+よりも高いため、xには20ではなく13が割り当てられます。したがって、最初に3 * 2が乗算され、次に7に加算されます。

ここでは、優先順位が最も高い演算子が表の上部に表示され、優先順位が最も低い演算子が下部に表示されます。式内では、優先順位の高い演算子が最初に評価されます。


カテゴリ
演算子
結合性
接尾辞
()[]->。 ++ ---
左から右
単項
+-! 〜++ ---(タイプ)*&sizeof
右から左
乗法
* /%
左から右
追加
+-
左から右
シフト
<<>>
左から右
リレーショナル
<<=>> =
左から右
平等
==!=
左から右
ビット単位のAND

左から右
ビット単位のXOR
^
左から右
ビット単位のOR
| 左から右
論理積
&& 左から右
論理OR
|| 左から右
条件付き
?: 右から左
割り当て
=+ =-=* =/ =%=>> =<<=&=^ =| =
右から左
カンマ
左から右



  1. C++の連続ツリー

    連続ツリーは、ルートノードからリーフノードへのパスがノードの値または重みを持ち、親ノードとそのすべての直接子ノードの絶対差が常に1になるツリーとして定義されます。 ルートからリーフへのパス上のノードを選択すると、 |ノードの重み-左の子ノードの重み|=|左の子ノードの重み-ノードの重み| =1、これは正しい子にも当てはまります |ノードの重み-右の子ノードの重み|=|右の子ノードの重みl-ノードの重み| =1 図 例を挙げて理解しましょう。 下のツリーは、親ノードとその子の絶対差が常に1であるため、連続しています。 以下のツリーは、連続ツリーとしての資格があり

  2. C++での最大二分木

    整数配列があるとします。その配列内のすべての要素は一意です。この配列での最大ツリー構築は、次のように定義されます- ルートは配列内の最大数を保持します。 左側のサブツリーは、サブアレイの左側を最大数で割って構築された最大ツリーです。 右側のサブツリーは、サブアレイの右側を最大数で割って構築された最大ツリーです。 最大の二分木を構築する必要があります。したがって、入力が[3,2,1,6,0,5]の場合、出力は-になります。 これを解決するには、次の手順に従います- Solve()というメソッドを定義します。これにより、リストと左右の値が取得されます。関