-
Array Functionen
Hallo,
ich möchte gerne eine Funktion erstellen die ein Array vom Typ Byte zurückgibt.
so etwa ( nur gehts so leider nicht)
Code:
Dim A(2) As Byte
Declare Function Test(2)(byval F As Byte) As Byte
Do
A() = Test()(8)
Loop
End 'end program
Function Test(2)(byval F As Byte) As Byte
Test(1) = F
Test(2) = F + 1
End Function
Gibts eine Möglichkeit so dass es doch geht?
Danke Gruß
Stefan
-
@bergowitch
Äh ist zwar ne blöde frage aber was ist eigentlich ein Array???
-
Ich weiß nicht, ob ich's versteh: Du willst von einer Function ein Array befüllen lassen ? (weil erzeugen kann er sie ja nicht)
Du kannst ihr ja den gewünschten Anfangs-Index als Parameter mitgeben.
die Tabelle ist ja sowieso durch DIM für alle zugänglich
Vielleicht kannst dein Problem näher erläutern.
-
Hi,
@ teslanikola: eine array ist ein Feld von Varibalen z.B. Dim A (3) as byte erzeugt drei Variablen A(1) , A(2), A(3)
@PicNick: Klar kann ich auch so an globale Variablen dran ist aber irgendwie nicht sauber (dann bräucht man ja keine Funktionen.
Ich würde aber gerne eine Funktion schreiben, die zwei variablen zurückgibt. ich fahre nämlich mit dem Servo die Umgebung ab und möchte die minimale Entfernung und deren Richtung zurück geben. Da aber nicht immer dieselbe globale Var verändert werden soll ist der soll die Funkction zwei Werte zurückgeben und nicht nureinen. Zwei Funktionen wäre nicht besser, da es dann doppelt so lange dauert.
Gruß Stefan
-
Na ja, folgendes als sub
declare sub _2Val(byref Out1 as byte, byref Out2 as byte, byval F as byte)
call _2Val(tab(1), tab(2), 8)
sub _2Val(byref Out1 as byte, byref Out2 as byte, byval F as byte)
out1 = F
out2 = F +1
end sub
-
Zwar keine "saubere"Lösung - aber einfach nett und simpel fast perfekt
Danke
Gruß
Stefan