Wiki source for KeyPgInteger


Show raw source

{{fbdoc item="title" value="INTEGER"}}----
Standard data type: 32-bit or 64-bit signed, same size as ##[[KeyPgSizeof|SizeOf]]([[KeyPgAny|Any]] [[KeyPgPtr|Ptr]])##

{{fbdoc item="syntax"}}##
[[KeyPgDim|dim]] //variable// [[KeyPgAs|as]] **Integer**
[[KeyPgDim|dim]] //variable// [[KeyPgAs|as]] **Integer**<//bits//>
##
{{fbdoc item="param"}}
##//bits//##
A numeric constant expression indicating the size in bits of integer desired. The values allowed are ##8##, ##16##, ##32## or ##64##.

{{fbdoc item="desc"}}
**Integer** is the main data type ""FreeBASIC"" uses for integer math and bitwise operations. It is the default type for number literals.

In the first form Integer is a 32-bit or 64-bit signed whole-number data type, depending on the target platform.

If an explicit bit size is given (the second form), a data type is provided that can hold values from ##-1LL [[KeyPgOpShiftLeft|Shl]] (//bits//-1)## up to ##(1LL [[KeyPgOpShiftLeft|Shl]] (//bits//-1)) - 1##. The selected data type is ##[[KeyPgByte|Byte]]## for **Integer<8>**, ##[[KeyPgShort|Short]]## for **Integer<16>**, ##[[KeyPgLong|Long]]## for **Integer<32>** and ##[[KeyPgLongint|LongInt]]## for **Integer<64>**.

{{fbdoc item="ex"}}
{{fbdoc item="filename" value="examples/manual/datatype/integer.bas"}}%%(freebasic)
#if __FB_64BIT__
Dim x As Integer = &H8000000000000000
Dim y As Integer = &H7FFFFFFFFFFFFFFF
Print "Integer Range = "; x; " to "; y
#else
Dim x As Integer = &H80000000
Dim y As Integer = &H7FFFFFFF
Print "Integer Range = "; x; " to "; y
#endif
%%

{{fbdoc item="lang"}}
- In the //[[CompilerOptlang|-lang fb]]// and //[[CompilerOptlang|-lang fblite]]// dialects, the ##**Integer**## data type is 32-bit or 64-bit depending on target platform
- In the //[[CompilerOptlang|-lang qb]]// dialect, the ##**Integer**## data type is 16-bit, regardless of platform.

{{fbdoc item="diff"}}
- The ability to select a bit size is new to ""FreeBASIC""
- The INTEGER type is always 16 bits wide in QB.

{{fbdoc item="see"}}
- ##[[KeyPgLong|Long]]##
- ##[[KeyPgLongint|Longint]]##
- ##[[KeyPgUinteger|Uinteger]]##
- ##[[KeyPgCint|Cint]]##

{{fbdoc item="back" value="CatPgStdDataTypes|Standard Data Types"}}
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki



sf.net phatcode