Hallo, ich habe da ein kleines Problem was wohl auf den Compiler zurückzuführen ist. Ich wollte bei meiner Empfangsroutine um RAM zu sparen nur gültige Zeichen durchlassen. Dazu habe ich eine Konstante mit den Zeichen definiert und vergleiche das empfangene Zeichen per Charpos damit. So war der Plan. Aber der klappt so nicht, BASCOm meldet: Error : 31 Invalid data type.
Alles anzeigen
Charpos als auch Instr aktzeptieren wohl nur Stringvariablen im RAM. Da ich aber mit dem RAM sparen muss
such ich nun eine Alternative ohne den Code mit if-Abfragen oder Select Case-Anweisungen aufzublähen. Hat jemand eine bessere Idee?
Dass der Vergleich mit String-Konstanten funktioniert wäre doch etwas, was Mark dem Compilre beibringen könnte? Liest der mit?
Quellcode
- ' Mit DIM funktioniert es
- ' Dim Rec_ok_char As String * 12
- ' Rec_ok_char = "0123456789;{013}"
- ' Mit Const aber nicht
- Const Rec_ok_char = "0123456789;{013}"
- Dim Rec_char_c As String * 1
- Dim Rec_char As Byte At Rec_char_c Overlay
- Do
- Rec_char = Waitkey()
- If Charpos(rec_ok_char , Rec_char_c) > 0 Then
- ' mach was....
- End If
- Loop
such ich nun eine Alternative ohne den Code mit if-Abfragen oder Select Case-Anweisungen aufzublähen. Hat jemand eine bessere Idee?
Dass der Vergleich mit String-Konstanten funktioniert wäre doch etwas, was Mark dem Compilre beibringen könnte? Liest der mit?