dec() Funktion in Delphi ist was in C++?
-
Hi Leute,
noch eine Frage: In Delphi gibt es eine dec() Funktion. Was macht die und was gibt es dazu in C++. Sie steht etwa so im Delphi code dec(y);
Kann mir einer dazu was sagen?
Danke im voraus.
Grüsse
xthing
-
OMG. Jetzt bin ich mir unsicher ob --y oder y--.
-
Das ist eigentlich egal, welche Version man in C++ nimmt. Die dec-Funktion ist eine Prozedur und hat somit keinen Rückgabewert. In C++ liefern beide Varianten etwas zurück.
-
Um deine Frage etwas genauer zu beantworten:
dec(y) dekrementiert eine Variable, also erniedrig ihren Wert um Eins.
In C++ benötigt man dafür keine Funktion da es dafür zwei Operatoren gibt.
In beiden Fällen wird er durch "--" dargestellt nur eben an einer anderen position. Wenn du die Operatoren nicht in einem Ausdruck verwendest dann machen sie auch genau das selbe :).int y = 3; y--; // y enthält nun den Wert 2 --y; // y enthält nun den Wert 1Wie du siehst machen sie hier genau dasselbe.
Jetzt aber in einem Ausdruck:int x = 5; int y = 3; int z = 8; int erg = 0; erg = x + z - --y; // erg = 11 // x = 5 // z = 8 // y = 2 y = 3 // y wieder resetten ^_^ erg = x + z - y--; // erg = 10 // x = 5 // z = 8 // y = 2Wie du siehst zwei unterschiedliche Ergebnise:
Beim ersten Ausdruck wo der decrement Operator vor der Variable steht wird sie erst decrementiert und dann in den Audruck verwendet, deshalb auch erg = 11.
Beim zweiten mal ist es genau andersherum, dort wird die Variable erst für den Ausdruck verwendet und dann dekrementiert, deshalb erg = 10.
Hoffe hat dir einen Überblick verschaft
mfg tobZel
-
Danke für Eure Antworten.
Grüsse
xthing