# Operatoren

- Zuweisung
- Bit-Operatoren
- Logik-Operatoren
- Prioritäten

Die folgenden Abschnitte beinhalten einen Überblick über die wichtigsten Operatoren in Perl. Für eine vollständige Liste sei auf entsprechende Dokumentation hingewiesen.

## Zuweisung

Die Zuweisung eines Wertes zu einer Variablen geschieht durch das "`=`"-Zeichen. Wie in C gibt es in Perl eine verkürzte Schreibweise für Operationen, die den Wert einer Variablen verändern. So kann z.B. eine Multiplikation statt

> `$i = $i * 5;`

auch

> `$i *= 5;`

geschrieben werden.

[Seitenanfang]

## Bit-Operatoren

- "`&`" bitweises UND
- "`|`" bitweises ODER
- "`^`" bitweises XOR (exklusives ODER)
- "`~`" bitweises Komplement
- "`<<`" bitweise Verschiebung des linken Arguments um eine (Ganz-) Zahl (rechtes Argument) nach links
- "`>>`" bitweise Verschiebung des linken Arguments um eine (Ganz-) Zahl (rechtes Argument) nach rechts

[Seitenanfang]

## Logik-Operatoren

- "`!`" logisches NOT
- "`&&`" logisches UND
- "`||`" logisches ODER
- "`not`" logisches NOT
- "`and`" logisches UND
- "`or`" logisches ODER
- "`xor`" logisches XOR (exklusives ODER)

Anmerkung : die Operatoren "`not`", "`and`" und "`or`" besitzen die gleiche Funktionalität wie die entprechenden symbolischen Operatoren "`!`", "`&&`" und "`||`", aber eine andere Priorität.

[Seitenanfang]

## Prioritäten

Hier nun eine Tabelle mit allen Perl-Operatoren, geordnet von der höchsten Priorität abwärts mit Angabe der jeweiligen Assoziativität:

> Assoziativität | Operator
> --- | ---
> links | Terme (Variablen, geklammerte Ausdrücke,...)
> links | `->`
> - | `++ --`
> rechts | `**`
> rechts | `! ~ \ + -` (unär)
> links | `=~ !~`
> links | `* / % x`
> links | `. + -` (binär)
> links | `<< >>`
> - | unäre Operatoren wie etwa Funktionen mit einem Argument
> - | `< > <= >= lt gt le ge`
> - | `== != <=> eq ne cmp`
> links | `&`
> links | `| ^`
> links | `&&`
> links | `||`
> - | `..`
> rechts | `?:`
> rechts | `= += -= *= usw.`
> links | `, =>`
> - | Listenoperatoren
> links | `not`
> links | `and`
> links | `or xor`

[Seitenanfang]

Autor: Eike Grote | Version: 2.02 (30.5.2005)