Arduino-オペレーター

演算子は、特定の数学関数または論理関数を実行するようにコンパイラーに指示する記号です。C言語は組み込み演算子が豊富で、次のタイプの演算子を提供します-

  • 算術演算子
  • 比較演算子
  • ブール演算子
  • ビット演算子
  • 複合演算子

算術演算子

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

例を表示

オペレーター名 簡単なオペレーター 説明
代入演算子 = 等号の右側の値を、等号の左側の変数に格納します。 A = B
添加 + 2つのオペランドを追加します A + Bは30を与えます
減算 - 最初のオペランドから2番目のオペランドを減算します A-Bは-10を与えます
乗算 * 両方のオペランドを乗算します A * Bは200を与えます
分割 / 分子を分母で割る B / Aは2を与えます
モジュロ モジュラス演算子と整数除算後の余り B%Aは0を与えます

比較演算子

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

例を表示

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

ブール演算子

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

例を表示

オペレーター名 簡単なオペレーター 説明
そして && 論理AND演算子と呼ばれます。両方のオペランドがゼロ以外の場合、条件は真になります。 (A && B)は本当です
または || 論理OR演算子と呼ばれます。2つのオペランドのいずれかがゼロ以外の場合、条件は真になります。 (A || B)は真です
ない 論理NOT演算子と呼ばれます。オペランドの論理状態を逆にするために使用します。条件がtrueの場合、LogicalNOT演算子はfalseになります。 !(A && B)はfalseです

ビット演算子

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

例を表示

オペレーター名 簡単なオペレーター 説明
そして バイナリAND演算子は、両方のオペランドに存在する場合、結果にビットをコピーします。 (A&B)は00001100である12を与えます
または | バイナリOR演算子は、いずれかのオペランドに存在する場合、ビットをコピーします (A | B)は611 1101である61を与えます
xor ^ バイナリXOR演算子は、ビットが両方ではなく一方のオペランドに設定されている場合、そのビットをコピーします。 (A ^ B)は、00110001である49を与えます。
ない Binary Ones Complement Operatorは単項であり、ビットを「反転」させる効果があります。 (〜A)は-60を返します。これは11000011です。
左にシフト << バイナリ左シフト演算子。左のオペランドの値は、右のオペランドで指定されたビット数だけ左に移動します。 << 2は、11110000である240を与えます
右シフト >> バイナリ右シフト演算子。左のオペランドの値は、右のオペランドで指定されたビット数だけ右に移動します。 >> 2は、00001111である15を与えます

複合演算子

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

例を表示

オペレーター名 簡単なオペレーター 説明
インクリメント ++ インクリメント演算子、整数値を1つ増やします A ++は11を与えます
デクリメント - デクリメント演算子、整数値を1つ減らします A--は9を与えます
化合物の添加 + = AND代入演算子を追加します。右のオペランドを左のオペランドに追加し、結果を左のオペランドに割り当てます B + = AはB = B + Aと同等です
複合減算 -= AND代入演算子を減算します。左のオペランドから右のオペランドを減算し、その結果を左のオペランドに割り当てます B- = AはB = B-Aと同等です
複合乗算 * = AND代入演算子を乗算します。右のオペランドと左のオペランドを乗算し、その結果を左のオペランドに割り当てます。 B * = AはB = B * Aと同等です
複合分割 / = AND代入演算子を除算します。左のオペランドを右のオペランドで除算し、その結果を左のオペランドに割り当てます B / = AはB = B / Aと同等です
複合モジュロ %= モジュラスAND代入演算子。2つのオペランドを使用してモジュラスを取り、その結果を左側のオペランドに割り当てます。 B%= AはB = B%Aと同等です
ビット単位の複合または | = ビット単位の包括的ORおよび代入演算子 A | = 2はA = A |と同じです 2
ビット単位の複合と &= ビットごとのAND代入演算子 A&= 2はA = A&2と同じです