Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi String in Char ? (https://www.delphipraxis.net/65915-string-char.html)

smart 22. Mär 2006 10:38


String in Char ?
 
Hallo!
Wie kann ich einen String in Char wandeln?

Gruß
Heike

MagicAndre1981 22. Mär 2006 10:42

Re: String in Char ?
 
Hallo Heike.

Ein String sind mehrere Zeichen und ein Char ist ein Zeichen, also geht das nicht.

Meinst du vllt PChar?

Das sollte so gehen:

Delphi-Quellcode:
PChar(String);
André

xaromz 22. Mär 2006 10:44

Re: String in Char ?
 
Hallo,

ein String besteht doch aus mehreren Zeichen, ein Char ist ein einzelnes Zeichen.
Auf die einzelnen Zeichen des Strings kannst Du über den Index zugreifen:
Delphi-Quellcode:
var
  I: Integer;
  S: String;
  Ch: Char;
begin
  S := 'ABCDEFG';
  for I := 1 to Length(S) do
    Ch := S[I];
end;
Gruß
xaromz

smart 22. Mär 2006 11:03

Re: String in Char ?
 
Zitat:

Zitat von xaromz
Hallo,

ein String besteht doch aus mehreren Zeichen, ein Char ist ein einzelnes Zeichen.
Auf die einzelnen Zeichen des Strings kannst Du über den Index zugreifen:
Delphi-Quellcode:
var
  I: Integer;
  S: String;
  Ch: Char;
begin
  S := 'ABCDEFG';
  for I := 1 to Length(S) do
    Ch := S[I];
end;
Gruß
xaromz

Vielen Dank!
ich hatte es mit 'copy' versucht, was nicht klappte.

Heike.

himitsu 22. Mär 2006 13:52

Re: String in Char ?
 
Zitat:

Zitat von smart
ich hatte es mit 'copy' versucht, was nicht klappte.

Also das gibt auch den 100. Char zurück
Delphi-Quellcode:
Var S: String;
  C: Char;

C := Copy(S, 100, 1)[1];
oder das
Delphi-Quellcode:
C := S[100];
oder
Delphi-Quellcode:
C := PChar(Copy(S, 100, 1))^;
aber gegal :roll:

Was du auf jedenfalls bei S[x] nicht vergessen solltest ... greife nie auf ein Zeichen zu, welches es nicht gibt, es gibt sonst 'ne nette Exception. :warn:

Also
Delphi-Quellcode:
S := 'abc';
C := S[4];
geht nicht, da der String nur 3 Zeichen hat und es demnach kein 4. gibt.

3_of_8 22. Mär 2006 14:25

Re: String in Char ?
 
Zitat:

Delphi-Quellcode:
C := PChar(Copy(S, 100, 1))^;

Oder so:

Delphi-Quellcode:
C:=@Copy(S, 100, 1)[1]^;
:mrgreen:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:04 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