english version while1 - stránky o programování

Precedence operátorů

Popis

Každé číslo seznamu obsahuje operátory se stejnou precedencí. Precedence operátorů klesá se vzrůstajícím číslem.

Typickým příkladem precednce může být 1+2*3 = 7. Protože * má vyšší precedenci než plus, bude výraz vyhodnocen jako součet výsledku 2*3 s hodnotou 1. Způsob vyhodnocení lze měnit ozávorkováním (1+2)*3 = 9.

Vývojový diagram

Přirozený jazyk

JSA

Precedenci určuje programátor explicitně pořadím zápisu jednotlivých instrukcí.

Pascal

PrioritaOperátorOperaceSkupina
1. not negace unární
@ adresa
+ plus
- mínus
2. * násobení násobení
/ dělení
div celočíselné dělení
mod zbytek cel. dělení
and logické AND
shl posun vlevo
shr posun vpravo
as
3. + součet sčítání
- rozdíl
or logické OR
xor logické XOR
8. = rovná se relace
<> různé od
< menší
> větší
<= menší nebo rovno
>= větší nebo rovno
in v intervalu
is is

C/C++

Pr.OperátorOperacePříkladAsoc.
1. :: vymezení platnosti jmeno_tridy::clen žádná
:: globalní ::jmeno
2. . výběr členu objekt.clen zleva
-> výběr členu objekt->clen
[] indexování ukazatel [vyraz]
() volání vyraz (seznam vyrazu)
() vytvoření hodnoty typ (seznam vyrazu) žádná
++ postfix inkrement adresovy_vyraz ++
-- postfix dekrement adresovy_vyraz --
3. sizeof velikost objektu sizeof vyraz žádná
sizeof velikost objektu sizeof (typ)
++ prefix inkrement ++ adresovy_vyraz
-- prefix dekrement -- adresovy_vyraz
+ unární plus + vyraz
- unární mínus - vyraz
~ negace bitů (doplněk)~ vyraz
! logická negace ! vyraz
* dereference * adresovy_vyraz
& adresa objektu & adresovy_vyraz
new vytvoření instance new typ
delete zrušení instance delete ukazatel
delete[] zrušení pole delete[] ukazatel
(type) přetypování (typ) vyraz zprava
const_cast přetypování žádná
dynamic_cast přetypování
reinterpret_castpřetypování
static_cast přetypování
4. .* výběr členu objekt .* ukazatel_na_clen zleva
->* výběr členu ukazatel->*
5. * násobení vyraz * vyraz zleva
/ dělení vyraz / vyraz
% modulo vyraz % vyraz
6. + součet vyraz + vyraz zleva
- rozdíl vyraz - vyraz
7. << posun vlevo vyraz << vyraz zleva
>> posun vpravo (signed) vyraz >> vyraz
8. < menší vyraz < vyraz zleva
<= menší nebo rovno vyraz <= vyraz
> větší vyraz > vyraz
>= větší nebo rovno vyraz >= vyraz
9. == rovná se vyraz == vyraz zleva
!= různé od vyraz != vyraz
10. & bitové AND vyraz & vyraz zleva
11. ^ bitové XOR vyraz ^ vyraz zleva
12. | bitové OR vyraz | vyraz zleva
13. &&logické AND vyraz && vyraz zleva
14. || logické OR vyraz || vyraz zleva
15. ? : podmínka vyraz ? vyraz : vyraz zprava
16. = přiřazení adresovy_vyraz = vyraz zprava
*= /= %= += -= <<= >>= &= |= ^= operace s přiřazením adresovy_vyraz X= vyraz
17. , čárka vyraz , vyraz zleva

Java

PrioritaOperátorOperaceAsociativita
1. [] index pole zleva
() volání
. zpřístupnění členu
2. ++ postfix inkrement zprava
-- postfix dekrement
+ - unární plus, mínus
~ negace bitů (doplněk)
! logická negace
(type) přetypování
new vytvoření instance
3. * / % násobení, dělení, modulo zleva
4. + - součet, rozdíl zleva
+ spojení řetězců
5. << posun vlevo (signed) zleva
>> posun vpravo (signed)
>>> posun vpravo (unsigned)
6. < <= menší, menší nebo rovno zleva
> >= větší, větší nebo rovno
instanceof zjištění typu reference
7. == rovná se zleva
!= různé od
8. & bitové AND zleva
& logické AND
9. ^ bitové XOR zleva
^ logické XOR
10. | bitové OR zleva
| logické OR
11. && logické AND zleva
12. || logické OR zleva
13. ? : podmínka zprava
14. = přiřazení zprava
*= /= %= += -= <<= >>= >>>= &= |= ^= operace s přiřazením

JavaScript

PrioritaOperátorOperaceAsociativita
1. ()
[]
2. ++ inkrement
-- dekrement
~ negace bitů (doplněk)
! logická negace
3. * / % násobení, dělení, modulo
4. + - součet, rozdíl
5. << posun vlevo (signed)
>> posun vpravo (signed)
>>> posun vpravo (unsigned)
6. < <=menší, menší nebo rovno žádná
> >=větší, větší nebo rovno
7. == rovná se žádná
!= různé od
8. & bitové AND
9. ^ bitové XOR
10. | bitové OR
11. &&logické AND
12. || logické OR
13. ? : podmínka
14. = přiřazení
*= /= .= %= += -= <<= >>= &= |= ^= ~= operace s přiřazením
15. , čárka

Matlab

PrioritaOperátorOperaceAsociativita
1. () závorky zleva
2. .' transpozice zleva
.^ mocnina
' sdružené číslo c
^ mocnina matice
3. + unární plus zleva
- unární mínus
~ logickí negace
4. .* násobení zleva
./ dělení zprava
.\ dělení zleva
* násobení matic
/ dělení matic zprava
\ dělení matic zleva
5. + součet zleva
- rozdíl
6. : sloupcový operátor zleva
7. < menší zleva
<= menší nebo rovno
> větší
>= větší nebo rovno
== rovná se
!= různé od
8. & bitové AND zleva
9. | bitové OR zleva
10. && logické AND zleva
11. || logické OR zleva

PHP

PrioritaOperátorOperaceAsociativita
1. new vytvoření instance žádná
2. [] zprava
3. ++ inkrement zprava
-- dekrement
~ negace bitů (doplněk)
! logická negace
(int) přetypování
(double) přetypování
(string) přetypování
(array) přetypování
(object) přetypování
@
4. * / % násobení, dělení, modulo zleva
5. + - součet, rozdíl zleva
. spojení řetězců
6. << posun vlevo (signed) zleva
>> posun vpravo (signed)
7. < <=menší, menší nebo rovno žádná
> >=větší, větší nebo rovno
8. == rovná se žádná
!= různé od
=== identický
!== neidentický
9. & bitové AND zleva
10. ^ bitové XOR zleva
11. | bitové OR zleva
12. &&logické AND zleva
13. || logické OR zleva
14. ? : podmínka zleva
15. = přiřazení zleva
*= /= .= %= += -= <<= >>= &= |= ^= ~= operace s přiřazením
16. print print zprava
17. and logické AND zleva
18. xor logické XOR zleva
19. or logické OR zleva
20. , čárka zleva
Kontakt
Prohlášení o dostupnosti
Tisk stránky
Autor: Václav Bubník © 2005
vbubnik@post.cz
XHTML 1.0| CSS