AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Herausfinden welcher String-Typ verwendet wird
Thema durchsuchen
Ansicht
Themen-Optionen

Herausfinden welcher String-Typ verwendet wird

Ein Thema von inc7 · begonnen am 5. Mär 2012 · letzter Beitrag vom 5. Mär 2012
Antwort Antwort
inc7

Registriert seit: 1. Mär 2012
5 Beiträge
 
#1

Herausfinden welcher String-Typ verwendet wird

  Alt 5. Mär 2012, 14:16
Delphi-Version: 5
Wie kann ich programmatisch herausfinden, welcher String-Typ (ShortString, AnsiString, WideString, UnicodeString) von einem deklarierten String oder vom System/Compiler verwendet wrid?
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#2

AW: Herausfinden welcher String-Typ verwendet wird

  Alt 5. Mär 2012, 14:27
Wozu denn das? Schau doch einfach in deinem Code nach, welchen Stringtyp du verwendest ...
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.342 Beiträge
 
Delphi 12 Athens
 
#3

AW: Herausfinden welcher String-Typ verwendet wird

  Alt 5. Mär 2012, 14:31
Man mag es nicht glauben, aber möchte man zwei Typen/Typendeklarationen vergleichen, dann vergleicht man einfach deren Typen-Informationen.

Delphi-Quellcode:
if TypeInfo(String) = TypeInfo(AnsiString) then
  IstAnsiString;

if SizeOf(Char) = 1 then
  IstAnsiString;
if SizeOf(Char) = 2 then
  IstUnicodeString;

{$IFDEF UNICODE}
  IstUnicodeString
{$ENDIF}

{$IF CompilerVersion > 19.0}
  IstUnicodeString
{$IFEND}




// das sollte wohl nur in Delphi 1 und vierlleicht auch noch Delphi 2 zutreffen (k.A. wann das umgestellt wurde)
if TypeInfo(String) = TypeInfo(ShortString) then
  IstShortString;
z.B. JEDI und Andere haben auch eine INC-Datei dabei, wo für sowas entsprechende Compilerschalter erstellt werden.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 5. Mär 2012 um 14:35 Uhr)
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#4

AW: Herausfinden welcher String-Typ verwendet wird

  Alt 5. Mär 2012, 14:51
// das sollte wohl nur in Delphi 1 und vierlleicht auch noch Delphi 2 zutreffen
Soweit ich mich erinnern kann habe ich bei Delphi 2 gelesen, dass Strings nun aut. AnsiString sind, in Delphi 1 waren Strings aut. ShortStrings. Man konnte aber in Delphi 1 das per Compilerschalter umschalten. Ich kann mich deshalb daran erinnern, weil ich in einem D1 Projekt alles als AnsiStrings deklarieren mußte, weil sie länger als 256 Zeichen waren, später den Compilerschalter genutzt habe und in D2 alles wieder entfernt habe und mit normalen Strings arbeiten konnte.
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.485 Beiträge
 
Delphi 10.1 Berlin Professional
 
#5

AW: Herausfinden welcher String-Typ verwendet wird

  Alt 5. Mär 2012, 16:09
Ich kann mich deshalb daran erinnern, weil ich in einem D1 Projekt alles als AnsiStrings deklarieren mußte
Da musst du aber eine andere Delphi 1 Version gehabt haben. Delphi 1 konnte nur ShortStrings und PChars. Erst mit Delphi 2 wurden AnsiStrings eingeführt.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#6

AW: Herausfinden welcher String-Typ verwendet wird

  Alt 5. Mär 2012, 16:30
Wie auch immer, gelesen habe ich es und in D3 ist String per Voreinstellung Ansistring. In diesem Fall habe ich das Projekt wohl schon mit D2 gemacht, also verschiebt sich die Aussage um eine Version nach oben.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz