Udostępnij za pośrednictwem


Operatory języka C#

C# zawiera zestaw duże podmioty gospodarcze, które są symbole, które określić operacje do wykonania w wyrażeniu.Operations on integral types such as ==, !=, <, >, <=, >=, binary +, binary -, ^, &,|, ~, ++, --, i sizeof() są ogólnie dozwolone w wyliczeniach.Ponadto wielu operatorów może być nadmiernie przez użytkownika, tak więc zmiana ich znaczenia, gdy jest stosowane na typ zdefiniowany przez użytkownika.

Poniższa tabela zawiera listę operatorów C# pogrupowane według priorytetu.Operatory w każdej grupie mają równy priorytet.

Operator kategorii

Podmioty gospodarcze

Podstawowy

x.y

f (x)

[x]

x ++

x--

Nowy

typeof

zaznaczone

jej źródłem jest niesprawdzony

Default(T)

Pełnomocnik

sizeof

->

Jednoargumentowy

+ x

-x

! x

~ x

++ x

--x

(T) x

czekają na

& x

* x

Multiplikatywne

x * y

x / y

x % y

Dodatek

x + y

x - y

Shift

x << y

x >> y

Relacyjne i badania typu

x < y

x > y

x < = y

x > = y

jest

jako

Równości

x == y

x! = y

Logiczne i

x & y

Logiczne XOR

x ^ y

Logiczne lub

x | y

I warunkowe

x & & y

LUB warunkowe

x || y

NULL odbiorczego

x?y

Warunkowe

?:

Wyrażenie przypisania i lambda

x = y

+ x = y

x-= y

x * = y

x = y

x % = y

x & = y

x | = y

x ^ = y

x << = y

x >> = y

= >

Przepełnienie arytmetyczne

Operatory arytmetyczne (+, , *, /) może produkować wyniki, które są poza zakresem możliwe wartości liczbowe rodzaju.Należy odnieść się do sekcji na dany operator, aby uzyskać szczegółowe informacje, ale w ogóle:

  • Arytmetyki całkowitej przepełnieniem albo wyrzuca OverflowException lub odrzuca najbardziej znaczących bitów wynik.Dzielenie przez zero zawsze wyrzuca DivideByZeroException.

  • Dzielenie przez zero lub zmiennoprzecinkowych przepełnienie arytmetyczne nigdy nie zgłasza wyjątek, ponieważ zmiennoprzecinkowych typów są oparte na IEEE 754 i tak mają przepisy reprezentujących nieskończoności i NaN (Not a Number).

  • Dziesiętny przepełnienie arytmetyczne zawsze wyrzuca OverflowException.Dziesiętny dzielenie przez zero zawsze wyrzuca DivideByZeroException.

Gdy występuje przepełnienie liczby całkowitej, co się stanie, zależy od kontekstu wykonania, które mogą być zaznaczony lub niezaznaczony.W kontekście sprawdzone OverflowException jest generowany.W kontekście niezaznaczone najbardziej znaczących bitów wynikiem są odrzucane i kontynuuje wykonywanie.W ten sposób C# umożliwia wybór obsługi lub ignorowanie przepełnienie.

Oprócz operatorów arytmetycznych, typ Całka do Całka typ prezentacji może spowodować przepełnienie, na przykład rzutowanie długi do inti podlegają wykonanie zaznaczony lub niezaznaczony.Jednakże operatory i operatory przesunięcia nigdy nie spowodować przepełnienie.

Zobacz też

Informacje

Oczekiwano operatorów (Podręcznik programowania C#)

Słowa kluczowe języka C#

Koncepcje

Podręcznik programowania C#

Inne zasoby

C# odniesienia

Program Visual C#