Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Auf einzelnen Buchstaben in AnsiString zugreifen? (https://www.delphipraxis.net/162292-auf-einzelnen-buchstaben-ansistring-zugreifen.html)

Angel4585 16. Aug 2011 14:42

Delphi-Version: 2010

Auf einzelnen Buchstaben in AnsiString zugreifen?
 
Hallöchen :)

Irgendwie steh ich grad aufm Schlauch.
Ich verwende Variablen vom Typ AnsiString.
Nun möchte ich das Zeichen an x-ter Stelle auslesen.
Bei ner String-Variablen geht das ja über variable[index], was bei AnsiString aber nicht geht.
Gibt es da was ähnliches kurzes?
Ich kann natürlich über Substring oder sowas arbeiten aber für ein einzelnes Zeichen so einen "Aufwand"?

DeddyH 16. Aug 2011 14:46

AW: Auf einzelnen Buchstaben in AnsiString zugreifen?
 
Zitat:

Zitat von Angel4585 (Beitrag 1117274)
Bei ner String-Variablen geht das ja über variable[index], was bei AnsiString aber nicht geht.

Das ist mir neu, wieso soll das nicht gehen?

Angel4585 16. Aug 2011 14:49

AW: Auf einzelnen Buchstaben in AnsiString zugreifen?
 
ahh ohh jetz wo du's sagst, ich bekomm ne Fehlermeldung un die bezieht sich scheinbar auf iwas anderes.

Ich hab einen Methodenkopf der so aussieht:

function tuwas(erste:AnsiString;zweite:Integer;dritte: AnsiChar):AnsiString;

aufrufen tu ich die über

ansistringvariable:=tuwas(ansistringvariable,intva riable,ansistringvariable[index]);

Und die Meldung ist:
[DCC Fehler] E2010 Inkompatible Typen: 'AnsiString' und 'procedure, untyped pointer or untyped parameter'


Edit:: Aaarghs habs... man sollte nciht davon ausgehen, dass die function wirklich ne function ist sondern evtl ne procedure.. ich geh mal in die ecke mich zu tode schämen :oops:

DeddyH 16. Aug 2011 14:52

AW: Auf einzelnen Buchstaben in AnsiString zugreifen?
 
Kannst Du mal den relevanten Code des Aufrufs zeigen?

Angel4585 16. Aug 2011 15:03

AW: Auf einzelnen Buchstaben in AnsiString zugreifen?
 
Wie gesagt, hat sich erledigt.

ich dachte die Methode wäre eine Funktion die einen Rückgabewert liefert, tatsächlich ist es aber eine Prozedur die mit var Parameter arbeitet.
In der Annahme das es eine Funktion ist hab ich folgendes geschrieben:
Delphi-Quellcode:

procedure TuWas(var avar : AnsiString;aind : Integer; achar : AnsiChar);
begin
..
end;

.

var
  av : AnsiString;
begin
av := TuWas(av,4,av[2]);
end;
Die Meldung kam tatsächlich durch das := zustande, weil ich damit versucht habe eine Prozedur die ich für eie Funktion hielt einer AnsiString Variablen zuzuweisen.

Daily Fail würd ich mal sagen :duck:

DeddyH 16. Aug 2011 15:04

AW: Auf einzelnen Buchstaben in AnsiString zugreifen?
 
Kann vorkommen ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz