Ordinal Typen und ihre "Eindeutigkeit"

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1629
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Ordinal Typen und ihre "Eindeutigkeit"

Beitrag von corpsman »

Servus,

Normalerweise kann ich ja kein Gutes Wort an C finden, aber was die Übersichtlichkeit der Ordinal Datentypen angeht, so haben die mit der "stdint.h" doch ganz gut Aufgräumt, gibt es in FPC sowas eigentlich auch ?

Ich habe ständig das Problem, dass ich hier Nachsehen muss, wenn ich mal wieder nen Datentyp brauche, der genau z.B. 16-Bit Vorzeichenbehaftet ist.. Noch schlimmer ists ja wenn man nur "integer" nimmt und Portablen Code Schreibt, dann muss man im Code erst mal Testen ob der nun 2 oder 4 Byte hat ..
--
Just try it

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2822
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Ordinal Typen und ihre "Eindeutigkeit"

Beitrag von m.fuchs »

Freepascal hat auch Aliase für bestimmte Typen.

Code: Alles auswählen

Int8    = ShortInt;
  Int16   = SmallInt;
  Int32   = Longint;
  IntPtr  = PtrInt;
  UInt8   = Byte;
  UInt16  = Word;
  UInt32  = Cardinal;
  UIntPtr = PtrUInt;
(aus der systemh.inc)

Reicht dir das?
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

Benutzeravatar
corpsman
Lazarusforum e. V.
Beiträge: 1629
Registriert: Sa 28. Feb 2009, 08:54
OS, Lazarus, FPC: Linux Mint Mate, Lazarus GIT Head, FPC 3.0
CPU-Target: 64Bit
Wohnort: Stuttgart
Kontaktdaten:

Re: Ordinal Typen und ihre "Eindeutigkeit"

Beitrag von corpsman »

Das Reicht vollkommen, wusste es nur nicht, thx.
--
Just try it

Mathias
Beiträge: 6938
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Ordinal Typen und ihre "Eindeutigkeit"

Beitrag von Mathias »

Es gibt noch einen int64 und uint64, finde aber keine Deklaration dazu.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

marcov
Beiträge: 1102
Registriert: Di 5. Aug 2008, 09:37
OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
CPU-Target: 32/64,PPC(+64), ARM
Wohnort: Eindhoven (Niederlande)

Re: Ordinal Typen und ihre "Eindeutigkeit"

Beitrag von marcov »

Mathias hat geschrieben:Es gibt noch einen int64 und uint64, finde aber keine Deklaration dazu.
Es gibt

UInt64 = QWord;

in rtl/inc/systemh.inc

int64 ist intern denk ich. Interne Typen gibts in rtl/inc/system.fpd (für Dokumentation), aber (u)int64 ist noch nicht dabei. Hmm, jetzt ist es da!

Antworten