Skip to content

Comparison of integer data types: FreeBASIC vs. C/C++ (using GCC)


C intC long long [int]C long [int]FB LongFB LongIntFB Integer
32bit win32326432 (ILP32)326432
32bit linux-x86326432 (ILP32)326432
64bit win64326432 (LLP64)326464
64bit linux-x86_64326464 (LP64)326464

Some public symbols (like namespaces, and user defined type member procedures) will have data type information encoded in to the public name (also known as name mangling or name decoration). Specific mapping of data types between FreeBASIC and gcc is required when linking fbc compiled object modules with gcc compiled object modules.

Targetfbc data typec data typebits
allbytesigned char8
allubyteunsigned char8
allbyte alias "char"char8
allubyte alias "char"char8
allshort[signed] short [int]16
allushortunsigned short [int]16
alllong[signed] int32
allulongunsigned int32
x86integer[signed] long [int]32
x86uintegerunsigned long [int]32
win64long alias "long"[signed] long [int]32
win64ulong alias "long"unsigned long [int]32
win64integerINTEGER64
win64uintegerUINTEGER64
linux-x86_64integer[signed] long [int]64
linux-x86_64uintegerunsigned long [int]64
alllongint[signed] long long [int]64
allulongintunsigned long long [int]64

See also

Back to DocToc

Translated from FreeBASIC official docs. Contact us for removal if infringed.
FreeBASIC is an open-source project, not affiliated with Microsoft