Arduino - operatorzy
Operator to symbol, który mówi kompilatorowi, aby wykonał określone funkcje matematyczne lub logiczne. Język C jest bogaty we wbudowane operatory i zapewnia następujące typy operatorów -
- Operatory arytmetyczne
- Operatory porównania
- Operatory boolowskie
- Operatory bitowe
- Operatory złożone
Operatory arytmetyczne
Załóżmy, że zmienna A zawiera 10, a zmienna B 20, a następnie -
Pokaż przykład
| Imię operatora | Operator prosty | Opis | Przykład |
|---|---|---|---|
| operator przypisania | = | Przechowuje wartość po prawej stronie znaku równości w zmiennej po lewej stronie znaku równości. | A = B. |
| dodanie | + | Dodaje dwa operandy | A + B da 30 |
| odejmowanie | - | Odejmuje drugi operand od pierwszego | A - B da -10 |
| mnożenie | * | Pomnóż oba operandy | A * B da 200 |
| podział | / | Podziel licznik przez mianownik | B / A da 2 |
| modulo | % | Operator modułu i reszta po dzieleniu całkowitoliczbowym | B% A da 0 |
Operatory porównania
Załóżmy, że zmienna A zawiera 10, a zmienna B 20, a następnie -
Pokaż przykład
| Imię operatora | Operator prosty | Opis | Przykład |
|---|---|---|---|
| równy | == | Sprawdza, czy wartość dwóch operandów jest równa, czy nie, jeśli tak, warunek staje się prawdziwy. | (A == B) nie jest prawdą |
| nie równa się | ! = | Sprawdza, czy wartość dwóch operandów jest równa, czy nie, jeśli wartości nie są równe, warunek staje się prawdziwy. | (A! = B) jest prawdą |
| mniej niż | < | Sprawdza, czy wartość lewego operandu jest mniejsza niż wartość prawego operandu, jeśli tak, warunek staje się prawdziwy. | (A <B) jest prawdą |
| Lepszy niż | > | Sprawdza, czy wartość lewego operandu jest większa niż wartość prawego operandu. Jeśli tak, warunek staje się prawdziwy. | (A> B) nie jest prawdą |
| mniejszy lub równy | <= | Sprawdza, czy wartość lewego operandu jest mniejsza lub równa wartości prawego operandu, jeśli tak, warunek staje się prawdziwy. | (A <= B) jest prawdą |
| większy lub równy | > = | Sprawdza, czy wartość lewego operandu jest większa lub równa wartości prawego operandu, jeśli tak, warunek staje się prawdziwy. | (A> = B) nie jest prawdą |
Operatory boolowskie
Załóżmy, że zmienna A zawiera 10, a zmienna B 20, a następnie -
Pokaż przykład
| Imię operatora | Operator prosty | Opis | Przykład |
|---|---|---|---|
| i | && | Nazywany operatorem logicznym AND. Jeśli oba operandy są niezerowe, warunek staje się prawdziwy. | (A && B) jest prawdą |
| lub | || | Nazywany operatorem logicznym OR. Jeśli którykolwiek z dwóch operandów jest niezerowy, warunek staje się prawdziwy. | (A || B) jest prawdą |
| nie | ! | Nazywany operatorem logicznym NOT. Służy do odwracania stanu logicznego operandu. Jeśli warunek jest spełniony, operator logiczny NOT spowoduje fałsz. | ! (A && B) jest fałszem |
Operatory bitowe
Załóżmy, że zmienna A zawiera 60, a zmienna B 13, a następnie -
Pokaż przykład
| Imię operatora | Operator prosty | Opis | Przykład |
|---|---|---|---|
| i | & | Operator binarny AND kopiuje trochę do wyniku, jeśli istnieje w obu operandach. | (A i B) dadzą 12, czyli 0000 1100 |
| lub | | | Operator binarny OR kopiuje bit, jeśli istnieje w którymkolwiek operandzie | (A | B) da 61, czyli 0011 1101 |
| xor | ^ | Binarny operator XOR kopiuje bit, jeśli jest ustawiony w jednym operandzie, ale nie w obu. | (A ^ B) da 49, czyli 0011 0001 |
| nie | ~ | Operator dopełniacza binarnego jest jednoargumentowy i powoduje „odwracanie” bitów. | (~ A) da -60, czyli 1100 0011 |
| przesuń w lewo | << | Binarny operator przesunięcia w lewo. Wartość lewego operandu jest przesuwana w lewo o liczbę bitów określoną przez prawy operand. | << 2 da 240, czyli 1111 0000 |
| przesuń w prawo | >> | Binarny operator przesunięcia w prawo. Wartość lewego operandu jest przesuwana w prawo o liczbę bitów określoną przez prawy operand. | >> 2 da 15, czyli 0000 1111 |
Operatory złożone
Załóżmy, że zmienna A zawiera 10, a zmienna B 20, a następnie -
Pokaż przykład
| Imię operatora | Operator prosty | Opis | Przykład |
|---|---|---|---|
| przyrost | ++ | Operator inkrementacji, zwiększa wartość całkowitą o jeden | A ++ da 11 |
| ubytek | - | Operator zmniejszania, zmniejsza wartość całkowitą o jeden | A-- da 9 |
| dodatek związku | + = | Dodaj operator przypisania AND. Dodaje prawy operand do lewego operandu i przypisuje wynik do lewego operandu | B + = A jest równoważne B = B + A |
| odejmowanie złożone | - = | Operator odejmowania AND przypisania. Odejmuje prawy operand od lewego operandu i przypisuje wynik do lewego operandu | B - = A jest równoważne B = B - A |
| mnożenie złożone | * = | Operator mnożenia AND przypisania. Mnoży prawy operand z lewym operandem i przypisuje wynik do lewego operandu | B * = A jest równoważne B = B * A |
| podział złożony | / = | Operator dzielenia AND przypisania. Dzieli lewy operand z prawym operandem i przypisuje wynik lewemu operandowi | B / = A jest równoważne B = B / A |
| złożone modulo | % = | Operator modułu AND przypisania. Pobiera moduł używając dwóch operandów i przypisuje wynik lewemu operandowi | B% = A jest równoważne B = B% A |
| złożone bitowe lub | | = | bitowy operator OR i przypisanie | A | = 2 to to samo, co A = A | 2 |
| złożone bitowe i | & = | Operator przypisania bitowego AND | A & = 2 to to samo, co A = A & 2 |