simple type
A simple type is a single value which can be stored in an Identifier. Simple types are predefined by the compiler, but are not reserved words. While it is not recommended, they can be redefined.
Simple types predefined by the compiler are:
| name | bytes | comment |
|---|---|---|
| boolean | 1 | |
| cardinal | 4 | |
| char | 1 (unless you use {$mode DelphiUnicode} or {$ModeSwitch UnicodeStrings}, then it will be 2) | most likely 1 |
| int8 | 1 | by definition |
| int16 | 2 | by definition |
| int32 | 4 | by definition |
| int64 | 8 | by definition |
| integer | either 2 or 4, depends on compilation mode | |
| shortint | 1 | <= integer |
| smallint | 2 | <= integer |
| longint | 4 | >= integer |
| byte | 1 | by definition |
| word | 2 | by definition |
| dword | 4 | by definition |
| qword | 8 | by definition |
| pointer | depends on target cpu bitness: on 32-bit it is 4, on 64-bit it is 8 | |
| single | 4 | single precision float |
| double | 8 (if the system supports this type, otherwise it's an alias for single) | double precision float |
| extended | 10 (if the system supports this type, otherwise it's an alias for double) | extended precision float |
| real | 4 or 8 (platform dependant) | |
| currency | 8 |
From the Free Pascal wiki, page "simple type", as it stood on 2023-01-30 after a change by Bart, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.
Talk about this page
Nobody has opened a bench for this page yet. Sign in to open one.
