Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Caran

Anmeldungsdatum: 11.03.2007 Beiträge: 290 Wohnort: Lörrach
|
Verfasst am: 22.08.2007, 19:59 Titel: Problem mit Funktionen |
|
|
Hi,
also ich habe ein Problem mit einer Funktion, da sie zwei Werte zurückgeben soll.
Beispiel: Code: | Function f1(a,b) as integer
c = a + b
d = a - b
end function |
In diesem Fall sollte sie c und d zurückgeben. Wie kann man sowas machen?
MfG Caran |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 22.08.2007, 20:09 Titel: |
|
|
du könntest
1) ein Array zurückgeben
2) einen TYPE zurückgeben. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Caran

Anmeldungsdatum: 11.03.2007 Beiträge: 290 Wohnort: Lörrach
|
Verfasst am: 22.08.2007, 20:22 Titel: |
|
|
Zum Beispiel der Befehl getmouse, ist der auch mit Type oder einem Array programmiert worden? |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 22.08.2007, 20:26 Titel: |
|
|
nein, getmouse ist eine Sub und keine function.
Code: |
Sub GetMouse(ByRef X, ByRef Y, ByRef Z)
X = ....
Y = ....
......
End Sub
|
mal as beispiel _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Michael712 aka anfänger, programmierer
Anmeldungsdatum: 26.03.2005 Beiträge: 1593
|
Verfasst am: 22.08.2007, 20:27 Titel: |
|
|
Nein, das ist keine zurückgabe.
Das geht auch mit subs:
Code: |
Sub blubber(byref a As Integer, byref b As Integer)
a = 2
b = 3
End Sub
Dim As Integer x, y
blubber(x, y)
Print x, y
|
_________________
Code: | #include "signatur.bi" |
|
|
Nach oben |
|
 |
Caran

Anmeldungsdatum: 11.03.2007 Beiträge: 290 Wohnort: Lörrach
|
Verfasst am: 22.08.2007, 20:37 Titel: |
|
|
Zitat: |
Code:
Sub blubber(byref a As Integer, byref b As Integer)
a = 2
b = 3
End Sub
Dim As Integer x, y
blubber(x, y)
Print x, y
|
Zitat: |
Code:
Sub GetMouse(ByRef X, ByRef Y, ByRef Z)
X = ....
Y = ....
......
End Sub
|
Das war eigentlich genau DAS was ich zustande bringen wollte.
Tja nochmal was dazu gelernt. Danke!
MfG Caran |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4699 Wohnort: ~/
|
Verfasst am: 22.08.2007, 20:40 Titel: |
|
|
Denk halt dran, dass dabei deine Werte a und b überschrieben werden. Solltest du sie noch weiter brauchen, dann ist eine Funktion mit Rückgabe eines Arrays oder eigenen Typs besser geeignet. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
|