Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Unterschied String, Char, AnsiChar, PAnsiCahr, etc. (https://www.delphipraxis.net/173218-unterschied-string-char-ansichar-pansicahr-etc.html)

SyntaxXx 13. Feb 2013 08:47

Unterschied String, Char, AnsiChar, PAnsiCahr, etc.
 
Hallo zusammen,
ich bin mich gerade mit den ganzen Typen am auseinandersetzen und bin jetzt komplett verwirrt.

Ich lieste mal alle Datentypen auf, die mir jetzt untergekommen sind (mit denen ich Probleme hab):

String
AnsiString
Char
PChar
AnsiChar
PAnsiChar

Dazu kommt, dass jetzt manche Nullterminiert sein sollen (was auch immer das schon wieder sein soll).
Jetzt gibt es aber ja seit Delphi 2009 eine Veränderung der Datentypen, sodass ja ein "Delphi 2007 AnsiString" nicht mehr einem "Delphi 2009 AnsiString" gleicht.

Jetzt frage ich mich, worin besteht jetzt genau der Unterschied, bzw. was hat Borland / Embarcadero jetzt geändert?

Es wäre echt super, wenn das hier mal jemand zusammen fassen könnte.
Denn auf 10 Seiten lesen ich 9 unterschiedliche Sachen.

TheFrog 13. Feb 2013 08:57

AW: Unterschied String, Char, AnsiChar, PAnsiCahr, etc.
 
Vielleicht hilft dir dieser Beitrag weiter. Ich fand es bei der Umstellung auf XE2 ganz nützlich.

http://edn.embarcadero.com/article/40307

Gruß, Hans.

p80286 13. Feb 2013 11:45

AW: Unterschied String, Char, AnsiChar, PAnsiCahr, etc.
 
AnsiChar = 1 Byte =256 unterschiedliche Zeichen möglich
PAnsiChar =^AnsiChar (das entspricht einem string in C, wenn am Ende ein #0 steht, nullterminiert)
AnsiString = Aneinanderreihung von 0..gaaanz vielen Ansichar (2Gb -1 ?)

WideChar = 2Byte (word) = 65536 unterschiedliche Zeichen möglich (in den "neueren" Delphi-Versionen)
PWideChar....
WideString....

Char = Je nach Delphiversion WideChar oder AnsiChar
PChar
String

String[x]=Shortstring= max 255 AnsiChar

So besser?

Gruß
K-H

mkinzler 13. Feb 2013 11:51

AW: Unterschied String, Char, AnsiChar, PAnsiCahr, etc.
 
Zitat:

Char = 2Byte (word) = 65536 unterschiedliche Zeichen möglich (in den "neueren" Delphi-Versionen)
Eigentlich ist dies ein virtzueller Typ. In den alten Versionen ein AnsiChar in den neuen eine WideChar. Selbiges für PChar, string.


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