Zuweisung



Unter Einer Zuweisung (englisch Zuordnung ) Versteht man in Einem Imperativ Programmiersprache EIN Typ von anweisung (englisch Aussage ) Durch die Eine Variable EINES Neuen Wert erhalten. In Abgrenzung von Ande Anweisungstypen, stirbt ebenfalls den Wert Einen Die Variable Verändern ! Can (zum beispiel Aufruf Wacholder Prozedur mit Nebeneffekten), spricht man nur von Einer Dann Zuweisung, Wenn Der Zuweisungsoperator der jeweilige Programmiersprache used Wird. Viele Programmiersprachen berücksichtigen hierbei sterben Zuweisungskompatibilität wo beteiligten Ausdrücke und die Variable, umProgrammfehler zu vermehren.

Wahrscheinlich gibt es viele Variablen, die im Programm gefunden werden können.Das Programm wird benötigt, um die Probleme zu erklären . Auf Manieren wird Programmiersprachen bei einer Zuweisung an eine noch nicht deklarierte Variable implizit ausgeführt (zum Beispiel in Perl , nicht aber in C ++ ).

Notation

Im Folgendem ist veine Variable und aein Ausdruck (englisch expression ). Diese Polizei sucht einzelne Notationen in den Unterschiedenen Programming Speeches.

v = a
Java , C , C ++ , C # , Python , Visual Basic .NET , PHP , JavaScript , Perl , Objective-C , Swift , Go , Ruby
v := a
Ada , ALGOL , Eiffel , Modula-2 , Oberon , Pascal , Seed7 , Smalltalk
set v a
Tcl
MOVE a TO v
COBOL
COMPUTE v = a
COBOL

Syntaktische Eigenschaften

Die Zuweisung Kann im Herbst, Wo sie nur mit Einem einfach Gleichheitszeichen symbolisiert Wird, leicht with the Mathematischen Gleichheitszeichen verwechselt Werden. Erfindungen von Die seit der Fortran Hauf in Programmiersprachen finden die Zuweisung zu Einer der Variable with the Gleichheitszeichen (zum beispiel x = y ) Kann DAHER leicht zu Irritationen oder Verwechslungen Führen: die Beiden Zuweisungen x = y (Zuweisung des Werts Die Variable der y zur Die Variable x ) und y = x (Zuweisung des Werts in der die Variablen x zur der Variable yHat) Jeweils Eine Völlig andere bedeutung als stirbt Beide entsprechend booleschen Ausdrücke mit relationalem Operator (Vergleich auf Gleichheit von x und y ), sterben in Beide Fall zu Einem identischen booleschen Plan Ergebnis Führen. [1]

Es ist in andere Programmiersprachen integriert, die in andere Angewandte integriert werden können, wenn sie auch als Ergebnis interpretiert werden können. Der following Beider beispiele zeigen Zwei Varianten Wacholder entsprechend Programmsequenz in der Programmiersprache C, Torerfolg zu sehr leicht zu übersehenden sterben Programmierfehler Führen Können:

int i = 0;
if (i = 1)
{
 of this blockieren immer ausgeführt Wird,
 Weil sterben Zuweisung i = 1 immer das numerische Ergebnis 1 hat,
 war als Boolesche Wert "wahr" interpretiert Wird der.
}
int i = 0;
if (i == 1)
{
 of this blockieren nie ausgeführt Wird,
 Weil sterben Vergleichsoperation in == 1 immer das numerische Plan Ergebnis 0 hat,
 war als Boolesche Wert "falsch" interpretiert Wird der.
}

Mehrfachzuweisungen

In verschiedenen Programmiersprachen ist es möglich, innere Formen zu definieren. Sie können sich auch für den Link der Seite der Zuweisungs-Operatoren mit den Variablen-Namen und Nutzungsrechten interessieren. Bitte beachten Sie, dass keine Kommentare vorhanden sind.

v1, v2 = a1, a2 Ruby
($ v1, $ v2) = ($ a1, $ a2) Perl
$ v1, $ v2 = $ a1, $ a2 Windows PowerShell

In Programmierpraktiken unterstützen die Mehrfachzuweisungen, Schweißen mit meiner eigenen Form der Form

v1, v2: = v2, v1

die Werte der Variablen v1und v2ausauschen. Erlaubt eine Sprache, ohne dass der Benutzer eine bestimmte Anzahl von Benutzereinstellungen benötigt. Mann sprang dann von einem Dreieckstausch .

Einzelstunden

  1. Hochspringen↑ Nikolaus Wirth: Gute Ideen, durch den Spiegel , Abschnitt 4.1 Notation und Syntax (PDF; 207 KB), Zürich (2005)