Variablen: Werte tauschen und übernehmen
Variablen: Werte tauschen und übernehmen
Ich habe hier 2 Fragen(Falls manche wieder mit der Hilfe kommen,Kann ich ihnen sagen dass ich schon geguckt habe aber nichts gefunden habe)
1.Gibt es eine Möglichkeit die Werte zweier Variablen zu tauschen?
2.Gibt es eine Möglichkeit dass ich einer Variable den Wert den Wert einer anderen zuteile?
Ich sehe hier von mal riesigen if-abfragen ab.
1.Gibt es eine Möglichkeit die Werte zweier Variablen zu tauschen?
2.Gibt es eine Möglichkeit dass ich einer Variable den Wert den Wert einer anderen zuteile?
Ich sehe hier von mal riesigen if-abfragen ab.
- NicTheQuick
- Ein Admin
- Beiträge: 8808
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Das geht auch schneller und unkomplizierter.
Wenn man das ganze allerdings mit Strings machen möchte, sollte man mal das Forum durchstöbern. Da gab es nämlich schon öfter solche Fragen und auch für Strings gibt es eine Lösung.
Aber suchen musst du dann schon selber. Dafür habe ich gerade wenig Zeit.
Code: Alles auswählen
a.l = 1144
b.l = 2311
a ! b
b ! a
a ! b
Debug a
Debug b
Aber suchen musst du dann schon selber. Dafür habe ich gerade wenig Zeit.
-
- Beiträge: 12
- Registriert: 23.03.2005 12:09
- Wohnort: Wien

Code: Alles auswählen
a.s = "Test"
b.s = "Hallo"
Debug a
Debug b
tempa.s = a
tempb.s = b
a = tempb
b = tempa
Debug a
Debug b
mist hab aber zu spät gesehen dass NicTheQuick inline ASM benutzt. Sorry
- NicTheQuick
- Ein Admin
- Beiträge: 8808
- Registriert: 29.08.2004 20:20
- Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti - Wohnort: Saarbrücken
Wo benutze ich denn InlineASM?VisualDemon hat geschrieben:mist hab aber zu spät gesehen dass NicTheQuick inline ASM benutzt. Sorry
Ansonsten funktioniert deine Methode Strings zu vertauschen natürlich perfekt. Es geht sogar noch etwas einfacher und schneller mit dieser Methode. Aber besonders schnell wird es dadurch nicht.
Hier also mit einer Temp-Variablen weniger.
Code: Alles auswählen
a.s = "Test"
b.s = "Hallo"
Debug a
Debug b
tempa.s = a
a = b
b = tempa
Debug a
Debug b
Das habe ich auch schonmal gemacht. Aber es geht - soviel ich weiß - auch noch schneller.
wie wäre es mit:
Code: Alles auswählen
x$="x_string"
y$="y_string"
!PUSH [v_x$]
!PUSH [v_y$]
!POP [v_x$]
!POP [v_y$]
Debug "x ist nun der " + x$
Debug "y ist nun der " + y$
...und wie wäre es mit:
Code: Alles auswählen
x$="x_string"
y$="y_string"
!MOV Eax, [v_y$]
!XCHG [v_x$], Eax
!MOV [v_y$], Eax
Debug "x ist nun der " + x$
Debug "y ist nun der " + y$

[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]
- freedimension
- Admin
- Beiträge: 1987
- Registriert: 08.09.2004 13:19
- Wohnort: Ludwigsburg
- Kontaktdaten:
Spielverderber!
...und warum sollen Anfänger kein Assembler lernen wollen? Ich wollt auch gleich als ich mit PB angefangen habe auch Assembler können, da ich PB nunmal InlineASM unterstützt und ich das auch ausprobieren wollte. und wenn das die Leute nicht wollen, können 'se die Beiträge ignorieren.
...und warum sollen Anfänger kein Assembler lernen wollen? Ich wollt auch gleich als ich mit PB angefangen habe auch Assembler können, da ich PB nunmal InlineASM unterstützt und ich das auch ausprobieren wollte. und wenn das die Leute nicht wollen, können 'se die Beiträge ignorieren.

[url=irc://irc.freenode.org/##purebasic.de]irc://irc.freenode.org/##purebasic.de[/url]