更新,下面这table为最新的tokyo基本数据类型与C++的对照关系:

 

Delphi to C++ types mapping



 



Go Up to Support for Delphi Data Types and Language Concepts

Below is a list of Delphi data types and the corresponding C++ data types:

Delphi type

defined in sysmac.h

Platform

Corresponding C++ type


Boolean


 

 

bool


ShortInt



System::Int8


 

signed char


SmallInt


 

 

short


Integer


 

 

int


Int64


 

 

__int64


Byte



System::Byte


 

unsigned char


Word



System::Word


 

unsigned short


Cardinal


 

 

unsigned


UInt64


 

 

unsigned __int64

NativeInt

System::NativeInt

32-bit platforms

int

64-bit Windows

__int64

64-bit iOS

64-bit Linux

long

NativeUInt

System::NativeUInt

32-bit platforms

unsigned int

64-bit Windows

unsigned __int64

64-bit iOS

64-bit Linux

unsigned long

LongInt

 

32-bit platforms

64-bit Windows

int

64-bit iOS

64-bit Linux

long

LongWord

 

32-bit platforms

64-bit Windows

unsigned

64-bit iOS

64-bit Linux

unsigned long


FixedInt


 

 

int


FixedUInt


 

 

unsigned int


Single


 

 

float


Double


 

 

double


Extended



System::Extended


 

long double


Currency



System::Currency, System::CurrencyBase


 

 


Comp



System::Comp, System::CompBase


 

 


Real


 

 

double


ShortString



System::ShortString, System::ShortStringBase


 

 


OpenString



System::OpenString


 

char* const

String

System::UnicodeString

 

 

WideString

System::WideString

 

 

AnsiChar

 

 

char

Char

System::WideChar

Windows platforms

wchar_t

Posix platforms

char16_t

WideChar

System::WideChar

Windows platforms

wchar_t

Posix platforms

char16_t


File



System::file


 

 


Text



System::TextFile


 

 


ByteBool



System::ByteBool


 

unsigned char


WordBool



System::WordBool


 

unsigned short


LongBool



System::LongBool


 

int


Real48



not supported in C++



Pointer


 

 

void*


PWideChar



System::WideChar*


Windows platforms

wchar_t*

Posix platforms

char16_t*


PAnsiChar


 

 

char*


Variant



System::Variant defined in sysvari.h


 

 


OleVariant



System::OleVariant defined in sysvari.h


 

 

Note: 32-bit platforms include 32-bit Windows, 32-bit macOS, 32-bit iOS, and Android.
POSIX platforms include macOS, iOS, iOS-simulator, Android, and Linux.

 

 

Delphi

数据类型

C/C++

ShorInt

8位有符号整数

char

Byte

8位无符号整数

BYTE,unsigned short

SmallInt

16位有符号整数

short

Word

16位无符号整数

unsigned short

Integer,LongInt

32位有符号整数

int,long

Cardinal,LongWord/DWORD

32位无符号整数

unsigned long

Int64

64位有符号整数 

_int64

Single

4字节浮点数

float

*Real48

6字节浮点数

 

Double

8字节浮点数

double

*Extended

10字节浮点数

long double

Currency

64位货币类型

 

TDate/TDateTime

8字节日期/时间

 

Variant,OleVariant

16字节可变类型

VARIANT,^Variant,^OleVariant

Char,AnsiChar

1字节字符

char

WideChar

2字节字符

WCHAR

*ShortString

短字符串

 

AnsiString/String

长字符串

^AnsiString

WideString

宽字符串

^WideString

PChar,PAnsiChar

NULL结束的字符串

char*

PWideChar

NULL结束的宽字符串

LPCWSTR

Boolean,ByteBool

1字节布尔类型

任何1字节

WordBool

2字节布尔类型

任何2字节

BOOL,LongBool

4字节布尔类型

BOOL

注:有*前缀的是向前兼容类型;有^前缀的是C++Builder特有类型。



C/C++

Delphi

ABC

TABC

ACCEL

TAccel

ATOM

TAtom

BITMAP

TBitMap

BITMAPCOREHEADER

TBitmapCoreHeader

BITMAPCOREINFO

TBitmapCoreInfo

BITMAPFILEHEADER

TBitmapFileHeader

BITMAPINFO

TBitmapInfo

BITMAPINFOHEADER

TBitmapInfoHeader

BOOL

Bool

CBT_CREATEWND

TCBT_CreateWnd

CBTACTIVATESTRUCT

TCBTActivateStruct

CHAR

Char

CHAR*

PChar

CLIENTCREATESTRUCT

TClientCreateStruct

COLORREF

TColorRef

COMPAREITEMSTRUCT

TCompareItemStruct

COMSTAT

TComStat

CREATESTRUCT

TCreateStruct

CTLINFO

TCtlInfo

CTLSTYLE

TCtlStyle

CTLtype

TCtltype

DCB

TDCB

DDEAACK

TDDEAck

DDEADVISE

TDDEAdvise

DDEDATA

TDDEData

DDEPOKE

TDDEPoke

DEBUGHOOKINFO

TDebugHookInfo

DELETEITEMSTRUCT

TDeleteItemStruct

DEVMODE

TDevMode

DOUBLE

Double

DRAWITEMSTRUCT

TDrawItemStruct

DWORD

LongInt

ENUMLOGFONT

TEnumLogFont

EVENTMSG

TEventMsg

FARPROC

TFarProc

FIXED

TFixed

FLOAT

Single

GLYPHMETRICS

TGlyphMetrics

HANDLE

THandle

HANDLETABLE

THandleTable

HARDWAREHOOKSTRUCT

THardwareHookStruct

HELPWININFO

THelpWinInfo

INT

Integer

KERNINGPAIR

TKerningPair

LOGBRUSH

TLogBrush

LOGFONT

TLogFont

LOGPALETTE

TLogPalette

LOGPEN

TLogPen

LONG

LongInt

LONG DOUBLE

Extended

LONG INT

LongInt

LPSTR

PChar

LPWSTR

PWideChar

MAT2

TMat2

MDICREATESTRUCT

TMDICreateStruct

MEASUREITEMSTRUCT

TMeasureItemStruct

MENUITEMTEMPLATE

TMenuItemTemplate

MENUITEMTEMPLATEHEADER

TMenuItemTemplateHeader

METAFILEPICT

TMetaFilePict

METAHEADER

TMetaHeader

METARECORD

TMetaRecord

MINMAXINFO

TMinMaxInfo

MOUSEHOOKSTRUCT

TMouseHookStruct

MSG

TMsg

MULTIKEYHELP

TMultiKeyHelp

NCCALCSIZE_PARAMS

TNCCalcSize_Params

NEWTEXTMETRIC

TNewTextMetric

OFSTRUCT

TOFStruct

OUTLINETEXTMETRIC

TOutlineTextMetric

PAINTSTRUCT

TPaintStruct

PALETTEENTRY

TPaletteEntry

PANOSE

TPanose

PATTERN

TPattern

POINTFX

TPointFX

PSTR

PChar

PWSTR

PWideChar

RASTERIZER_STATUS

TRasterizer_Status

RGBQUAD

TRGBQuad

RGBTRIPLE

TRGBTriple

SEGINFO

TSegInfo

SHORT

SmallInt

SHORT INT

SmallInt

SIZE

TSize

TEXTMETRIC

TTextMetric

TPOINT

TPoint

TRECT

TRect

TTPOLYCURVE

TTTPolyCurve

TTPOLYGONHEADER

TPolygonHeader

UINT

Word

UNSIGNED

Word

UNSIGNED CHAR

Byte

UNSIGNED INT

Word

UNSIGNED LONG

LongInt(DWORD)

UNSIGNED LONG INT

LongInt

UNSIGNED SHORT

Word

UNSIGNED SHORT INT

Word

VOID*

Pointer

WINDOWPLACEMENT

TWindowPlacement

WINDOWPOS

TWindowPos

WNDCLASS

TWndClass

WORD

Word