-
-
Variablenübergabe in Funktion
Hallo
Ich bekomme es einfach nicht hin meinen string in eine Funktion zu übertragen.
Mein Code in Bascom
Declare Sub Test(zahl As string * 1)
Dim Temp As String * 1
Do
Temp = ""
Call Test(Temp)
Loop
End
Sub Test([byref]zahl As string * 1)
local wert as byte
wert = asc(zahl)
print wert
End Sub
Habe auch schon ausprobiert von byref auf byval zu schalten. Auch nichts.
Er meckert be der Funktion wert = asc(zahl), weil der typ der Variable nicht übereinstimmt
Danke für eure Hilfe
-
Administrator
Robotik Visionär
Wenn der String nur ein Byte lang ist, dann ist es kein String sondern vielmehr nur ein Zeichen. Du solltest eventuell dann lieber Variablentyp Byte nehmen. Wenn du nur ein Zeichen aus einem String brauchst, dann kannst du es auch mit MID herauspflücken und einer Byte Variable zuweisen. "asc" brauchst du dann garnicht.
Bei längeren Strings kannst du es so probieren:
Declare Sub Test(byval zahl As string)
Achte darauf das bei der Verwendung von lokalen Variablen und Parametern in Funktionen sehr oft der Soft- und Hardwarestack in den Compiler-Optionen erhöht werden muss. Ansonsten kommt es zu Fehlern.
Gruß Frank
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen