Typecast

From Free Pascal wiki
Revision as of 11:19, 12 June 2016 by FPC user (talk | contribs) (→‎Type conversion: AnsiChar, WideChar -> String)
Jump to navigationJump to search

Deutsch (de) English (en) français (fr) русский (ru)


Converting values from variables with a lower value range data type to variables with higher value range data type is done automatically (implicit). A value is converted by a variable of higher-value data type into a variable with a data type of lower values via a cast or function call, and if the value does not fit into the variable of the target data type then data will be lost.

Type conversion


Source data type Target data type Type of type conversion Method
Integer Real implicit assignment statement
Real Integer explicit:
Cut off the fractional part
Round fractional part

Trunc
Round
Integer String explicit IntToStr
Real String explicit FloatToStr
FloatToStrF
String Integer explicit StrToInt
String Real explicit StrToFloat
String Char explicit String[index]
Char/AnsiChar/WideChar String implicit assignment statement
Char/AnsiChar Byte explicit Ord
Byte(char-value)
Byte Char/AnsiChar explicit Chr
AnsiChar(byte-value)
Enumerated type String explicit WriteStr(string-var,enum-var)


Source data type Target data type Type of type conversion Method
QWord Byte explicit Byte(QWord)
QWord Word explicit Word(QWord)
QWord Cardinal explicit Cardinal(QWord)
QWord Longword explicit Longword(QWord)
Longword Byte explicit Byte(Longword)
Longword Word explicit Word(Longword)
Longword Cardinal implicit assignment statement
Int64 Byte explicit Byte(Int64)
Int64 Shortint explicit Shortint(Int64)
Comp Byte explicit Byte(Comp)
Comp Shortint explicit Shortint(Comp)
Comp Real explicit Real(Comp)