Archiv verlassen und diese Seite im Standarddesign anzeigen : [gelöst] String mit "select Case" auswerten
Hallo Zusammen,
ich bin am rumprobieren und bin nicht sicher wo mein Fehler
liegt. Kann man in Bascom einen String mit 3Zeichen Inhalt
so auswerten?
dim Ausgabe_com2 as String *3
Select Case Ausgabe_com2
Case "Ein" : Portd.5 = 1
Case "Aus" : Portd.5 = 0
Case Else : Print #1 , "Fehler"
End Select
also bei mir kommt immer die letzte Case Anweisung raus, den Inhalt von "Ausgabe_com2" sehe ich aber richtig im LCD, also das sollte stimmen.
Danke schon mal!
Gruß Frank
Ich glaube das geht besser mit der Funktion "INSTR":
Ein_empfangen = Instr(inputstring , "Ein")
Hi,
danke ich schau mir das mal an, wirkt aber recht umständlich.
Hätte nicht gedacht das scheinbar mit "select case" nicht geht.
Im Netz hatte ich schon ein paar Beispiele gesehen, dort fragen
die es auch so ab, habe jetzt keine Ahnung ob die Code´s auch wirklich laufen oder nur mal so getippt wurden.
Gruß Frank
Hast du Groß-Kleinschreibung beachtet ? Der Input muss genau stimmen
Hallo Robert,
ich denke ja, den selben String lasse ich mir zur Zeit noch auf dem LCD
ausgeben, sollte passen. Habe jetzt noch mal ein bissel im Netz gestöbert,
alles was man findet sieht genauso aus wie bei mit, vielleicht mach ich
da wo anders einen Fehler, muss da heute Abend noch mal genau drüber schauen.
Danke, trotzdem!!
Gruß Frank
However, folgendes funktioniert:
Dim Instrg As String * 20
Do
Instrg = "Eins"
Gosub Check
Instrg = "Zwei"
Gosub Check
Loop
End 'end program
'-------------------------------
Check:
Select Case Instrg
Case "Eins" : Print "One"
Case "Zwei" : Print "Two"
Case Else : Print "?"
End Select
Return
Aupassen, irgendwelche Leer/sonder-zeichen im String siehst du zwar am LCD nicht, trotzdem erkennt er das dann nicht
peterfido
03.08.2009, 20:53
Es könnte an den Steuerzeichen liegen. Meist werden Strings mit chr(10) und chr(13) abgeschlossen.
Hallo Zusammen,
Ihr habt scheinbar Recht, ich habe mir mal die Stringlänge mit ausgeben lassen, ist immer ein Zeichen mehr drin, obwohl man es nicht auf dem Display sieht. Muss mir die Empfangsroutine noch mal ansehen.
Danke schon mal!!
Gruß Frank
Hallo,
so es geht, war wirklich ein Zeichen zu viel im String, hatte da einen Fehler im Code. Danke für die guten Tipp´s
Gruß Frank
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.