Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#17

Re: String in BDS 2006 = AnsiString in RAD 2009?

  Alt 12. Nov 2008, 00:08
Zitat von jfheins:
Freu dich schonmal, wenn Integer auch mal 64 bit haben kann
Was ich so gehört/gelesen habe wird der Typ Integer ein Int32 bleiben. Dafür gibt es dann den NativInteger (den es bereits seit Delphi 2007 gibt) und der ist bei 32 Bit Kompilierung Int32 und bei 64 Bit Kompilierung Int64. (Ist aber alles nur Hörensagen)

Was Probleme machen wird ist die Annahme SizeOf(Integer) = SizeOf(Pointer). Wer also einen Pointer in einen Integer Typecastet und dann etwas Pointer-Arithmetik betreibt wird leichte Probleme beim größeren Adressraum bekommen. Dafür hat Microsoft die Typen DWORD_PTR, INT_PTR, LONG_PTR usw. eingeführt. Aber man kann ab Delphi 2009 hierfür ja auch (endlich) PByte benutzen, oder man macht es eben mit PAnsiChar.
  Mit Zitat antworten Zitat