标准数据类型限制
 
标准变量类型和限制。

数值类型

类型大小在位格式最小值最大值字面后缀SIG。数字
BYTE8有符号整数-128+1272+
UBYTE8无符号整数0+255 2+
SHORT16有符号整数-32768+32767 4+
USHORT16无符号整数065535 4+
LONG32有符号整数-2147483648+2147483647&, l9+
ULONG32无符号整数04294967295ul9+
INTEGER32/64 [*]有符号整数[*][*]%[*]
UINTEGER32/64 [*]无符号整数[*][*]u[*]
LONGINT64有符号整数-9 223 372 036 854 775 808+9 223 372 036 854 775 807ll18+
ULONGINT64无符号整数0+18 446 744 073 709 551 615ULL19+
SINGLE32浮点[**]+/-1.401 298 E-45[**]+/-3.402 823 E+38!, f6+
DOUBLE64浮点[**]+/-4.940 656 458 412 465 E-324[**]+/-1.797 693 134 862 316 E+308#, d15+


[*] 整数和UInteger数据类型随平台而异,与指针的大小相匹配。
[**] 浮点类型Single和Double的最小值和最大值分别为最接近零的值,最接近正负无穷大的值。

字符串类型

类型字符大小(字节)最小尺寸(以字符)最大尺寸(以字符)字面后缀
string10[**]+2147483647$
zstring10[**]+2147483647[N/A]
WSTRING[*][*]0[*,**]+2147483647[N/A]


[*] Unicode或“wide”,字符大小和可用性随平台而异。
[**] 所有运行时库字符串过程都会获取大小和位置的整数值。 实际的最大尺寸将随存储位置和/或平台而变化(较小)。

阵列

最大下标范围每个维度的最大元素最小/最大尺寸最大大小(以字节为单位)
[*][-2147483648, +2147483647][*]+21474836471/9[*]+2147483647


[*] 所有运行时库数组过程都会为下标和索引生成整数值。 实际限制将随维度数量,元素大小,存储位置和/或平台而变化(较小)。

参考

ProPgIdentifierRules用于变量的后缀
ProPgLiterals用于文字/数字的后缀