Eine Sprache dient zur Verständigung, eine Script- oder Programmiersprache
der Verständigung zwischen Mensch und Maschine. Wie die natürlichen, zwischenmenschlichen Sprachen, so verfügen
Script- oder Programmiersprachen ebenfalls über eine mehr oder weniger komplexe Syntax. Zu dieser Syntax
gehören Ausdrücke, Operanden und Operatoren.
Ein Ausdruck besteht aus einer unterschiedlichen Anzahl von Operanden und
liefert einen Wert. Ein einfacher Ausdruck kann nur aus einem einzelnen Literal bestehen, wobei der Wert
des Ausdrucks gleich dem Wert des Literals ist. Einzelne Operanden können mit Hilfe von Operatoren getrennt oder
verbunden, verrechnet oder verglichen, vom Datentyp umgewandelt, verschoben oder einer Variablen zugewiesen
werden.
Ein einzelner Operand wird innerhalb eines aus mehreren Operanden und Operatoren bestehenden Ausdrucks zu
einem Teilausdruck, auch wenn es sich dabei um den in einer Variablen gespeichert Wert eines anderen Ausdrucks
handelt. Wird ein Operand mit Hilfe des Zuweisungsoperators zum Beispiel einer Variablen zugwiesen, handelt
es um einen Ausdruck, wobei der Operand zum Teilausdruck wird. Beispiel eines einfachen Ausdrucks:
int var = 40; // Ausdruck mit Zuweisungsoperator (=) und Operand (40)
Oder einfacher, die Ausdrücke "a" "b" "e" "r" werden im Ausdruck "aber" zu Teilausdrücken und der Ausdruck "aber" wird im komplexeren Ausdruck "aber nicht heute" wiederum zu einem Teil eines komplexeren Ausdruckes. Doch wenn das a und e keinen Wert hätte, würden wir den Ausdruck nicht mehr eindeutig interpretieren können.
Bei den Operanden kann es sich um Literale, Variablen sowie um Konstanten
handeln. Einzelne Operanden und Ausdrücke können durch Operatoren zu einem komplexeren Ausdruck vereint werden.
Bei dem gelieferten Wert kann es sich zum Beispiel um einen booleschen Wahrheitswert handeln.
Ein Beispiel:
40 ist kleiner als 30 = falsch
40 ist größer als 30 = richtig bzw. wahr
Das Beispiel beinhaltet die Literale 40 und 30 als Operanden bzw. als Teilausdrücke und einen Wahrheitswert
als Ergebnis. Alles zusammen bringt zum Ausdruck, ob der jeweilige Vergleich wahr oder falsch ist. Nur leider,
die Bedeutung würde bei dieser Schreibweise weder ein Compiler, noch ein Interpreter oder ein Softwaresystem
verstehen. Mit den richtigen Operatoren hingegen schon.
Ein Beispiel mit den vergleichenden Operatoren < und > in C:
#include <stdio.h> int main() { if (40 < 30) { printf("Ist richtig!\n"); } else { printf("Ist falsch!\n"); // Ausgabe: Ist fasch! } if (40 > 30) { printf("Ist richtig!\n"); // Ausgabe: Ist richtig! } else { printf("Ist falsch!\n"); } getchar(); return 0; }
Ein Einsteiger in einer beliebigen Script- oder Programmiersprache sollte
von Anbeginn an die wichtigsten Operatoren kennen, um die Syntax einer Sprache zu verstehen. Da ein Großteil
der Operatoren sprachübergreifend Verwendung findet, haben wir diese in der nachfolgenden Übersicht aufgelistet.
Es sei angemerkt, dass die Übersicht keinen Anspruch auf Vollständigkeit erhebt. So blieb zum Beispiel der
Punkt-Operator unerwähnt, da diesem in JavaScript eine andere Bedeutung zukommt, als in C oder PHP. Weiterhin
werden in jeder Script- oder Programmiersprache noch Schlüsselwörter als Operatoren benutzt, deren sprachübergreifende
Vorstellung und Abhandlung hier zu weit führen würde.
Operator | Bedeutung | Operator | Bedeutung |
Vergleichsoperatoren | Arithmetische Operatoren | ||
== | gleich | + | Addition |
!= | ungleich | - | Subtraktion |
=== | genau gleich mit Typvergleich nicht in C/C++ |
* | Multiplikation |
!== | nicht genau gleich mit Typvergleich nicht in C/C++ |
/ | Division |
< | kleiner als | ++ | Inkrementor Erhöhung um 1 |
> | größer als | -- | Dekrementor Erhöhung um 1 |
<= | kleiner oder gleich | % | Modulo |
>= | größer oder gleich | ||
Kombinierte Operatoren | |||
Logische Operatoren | += | Der Zuweisungsoperator kann in Kombination mit arithmetischen Operatoren benutzt werden. |
|
! | Nicht oder Negation | -= | |
&& | und in PHP auch and |
*= | |
|| | oder in PHP auch or |
/= | |
Bit-Operatoren | Bedingungsoperator | ||
& | und (bitweise) | ?: | Alternative Schreibweise für Kontrollstrukturen, die einem if-Statemant entsprechen. |
^ | xor (bitweise, entweder oder) | ||
| | oder (bitweise) | ||
<< | Linksverschiebung | ||
>> | Rechtsverschiebung |
Nachfolgend einige weitere Beispiele für die Verwendung von vergleichenden und arithmetischen Operatoren in C. Wie gut an erkennbar ist (zumindest für Einsteiger, die sich bereits etwas mit JavaScript oder PHP auskennen), besteht in der Syntax kein großer Unterschied zwischen den einzelnen Sprachen, da die Beispiele mit kleineren Änderungen in JavaScript oder in PHP ebenfalls ihre Aufgaben erfüllen würden.
/* Beispiele mit vergleichenden Operatoren in C */ #include <stdio.h> int main() { int ab1 = 21; int ab2 = 21; int ab3 = 33; int ab4 = 44; char uner[23] = "Unerwartetes Ergebnis!"; if (ab1 == ab2) { printf("Die Werte von ab1 und ab2 gleichen sich.\n\n"); } else { printf("%s\n", uner); } if (ab2 != ab3) { printf("Die Werte von ab2 und ab3 gleichen sich nicht.\n\n"); } else { printf("%s\n", uner); } if (ab3 <= ab4) { printf("Der Wert von ab3 ist kleiner oder gleich dem \n\rWert von ab4.\n"); } else { printf("%s\n", uner); } getchar(); return 0; }
Vergleichende Operatoren in C / Ausgabe der Ergebnisse
/* Beispiele mit arithmetischen Operatoren in C */ #include <stdio.h> int main() { int we1 = 10; int we2 = 4; int we3 = 2; int we4 = 3; we1 += we2; printf("%d\n", we1); // Ausgabe 14 we1 /= we3; printf("%d\n", we1); // Ausgabe 7 we1 = we1 + we4; printf("%d\n", we1); // Ausgabe 10 we1 = (we1 * we3 + we2) / 6; printf("%d\n", we1); // Ausgabe 4 getchar(); return 0; }
Weitere Operatoren werden bei den jeweiligen Script- und Programmiersprachen abgehandelt, insofern diese für die einzelnen Themen von Bedeutung sind.
Einstieg in:
C/C++
PHP
JavaScript
Übersicht