Hi,
ich möchte einen String nach bestimmten Zeichen durchsuchen. Da ich aber wenig Zeit dafür verwenden kann / darf, möchte ich mir selbst eine Funktion schreiben. Dazu lege ich ein Byte-Array als Overlay über einen String, bis hierhin ja noch kein Problem. Jetzt brauche ich eine Funktion, die mir die Position dieses Zeichens als Byte zurückgibt, das hab ich auch schon:
Der Code ist noch nicht optimiert, aber das mache ich erst, wenns funktioniert. Das Problem ist, wenn ich die Funktion aufrufe:Code:Function Searchstring(byval Strar As Byte , Byval Strsearch As Byte) As Byte Local I As Byte Searchstring = 0 For I = 1 To 255 Step 1 If Strar(i) = 10 Then 'Lf Exit For End If If Strar(i) = Strsearch Then Searchstring = I Exit For End If Next I End Function
arbeitet er nur mit dem ersten Byte des Arrays, weils eben übergeben wurde. Ich möchte aber das ganze Array übergeben. Wie geht das? Bzw. geht das in Bascom überhaupt?Code:Tmp = Searchstring(gps_ovl(1) , 58)
Ich hab schon dran gedacht, die Speicheradresse des ersten Bytes zu übergeben und dann immer zu inkrementieren, aber die Lösung gefällt mir nicht so gut...
Byref kann ich fürs Array nicht nutzen, da ich dann für jeden String eine eigene Funktion bräuchte und das zuviel Platz verbrauchen würde, den ich nicht habe.
Ich hoffe ihr versteht mein Problem und jemand kann mir helfen?!
Vielen Dank & Gruß
Chris







Zitieren

Lesezeichen