Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - String -> Char


Pdd - Di 13.12.05 22:20
Titel: String -> Char
Hi wie kann mnan bei der meldung: "[Fehler] Unit1.pas(36): Inkompatible Typen: 'Char' und 'String'" Das String in Pchar umwandeln??

gehört ubrigens zu der zeile: if s[i]='_' then s[i]:='';

Dnaake schonaml :-P


Moderiert von user profile iconUGrohne: Topic aus Off Topic verschoben am Di 13.12.2005 um 21:32


F34r0fTh3D4rk - Di 13.12.05 22:22
Titel: Re: String -> Char
user profile iconPdd hat folgendes geschrieben:
Hi wie kann mnan bei der meldung: "[Fehler] Unit1.pas(36): Inkompatible Typen: 'Char' und 'String'" Das String in Pchar umwandeln??

gehört ubrigens zu der zeile: if s[i]='_' then s[i]:='';

Dnaake schonaml :-P


probier mal:


Delphi-Quelltext
1:
if s[i]=chr('_'then s[i]:=''                    

oder

Delphi-Quelltext
1:
if s[i]=chr(ord('_')) then s[i]:=''                    

oder

Delphi-Quelltext
1:
if chr(s[i])='_' then s[i]:=''                    


oder weitere kombinationen ;)


Pdd - Di 13.12.05 22:23

Hä? binich zu blöde oder was??? da kommt bei allen dreine meldungen: Inkompitable typen!


delfiphan - Di 13.12.05 22:29

Dein Ausdruck s[i] = ''; ergibt keinen Sinn. S[i] ist ein Char und '' ein leerer String. Ein "nicht existentes Zeichen" gibt es nicht.
Um ein Zeichen aus einem String zu entfernen, siehe Delete.


F34r0fTh3D4rk - Di 13.12.05 22:30

das kann auch angehen, dann mach statt '' #0


delfiphan - Di 13.12.05 22:32

Durch eine Zuweisung kannst du kein Char aus einem String löschen. Wie gesagt, dafür gibt es Delete.

PS: Ausserdem musst du dann deine Schleife, die du wahrscheinlich drum herum hast, rückwärts durchlaufen. Naja, weiss ja nicht, was du vor hast.