Data type |
Storage size |
Range |
Byte |
1 byte |
0 to 255 |
Boolean |
2 bytes |
True or False |
Integer |
2 bytes |
-32,768 to 32,767 |
Long |
4 bytes |
-2,147,483,648 to 2,147,483,647 |
Single |
4 bytes |
-3.402823E38 to -1.401298E-45 for negative values;
|
Double |
8 bytes |
-1.79769313486231E308 to |
Currency |
8 bytes |
-922,337,203,685,477.5808 to 922,337,203,685,477.5807 |
Decimal |
14 bytes |
+/-79,228,162,514,264,337,593,543,950,335 with no decimal
point; |
Date |
8 bytes |
January 1, 100 to December 31, 9999 |
Object |
4 bytes |
Any Object reference |
String |
10 bytes + string length |
0 to approximately 2 billion |
String |
Length of string |
1 to approximately 65,400 |
Variant |
16 bytes |
Any numeric value up to the range of a Double |
Variant |
22 bytes + string length |
Same range as for variable-length String |
User-defined |
Number required by elements |
The range of each element is the same as the range of its data type. |
Note Arrays of any data type require 20 bytes of memory plus 4 bytes for each array dimension plus the number of bytes occupied by the data itself. The memory occupied by the data can be calculated by multiplying the number of data elements by the size of each element.
For example, the data in a single-dimension array consisting of 4 Long data elements of 2 bytes each occupies 8 bytes. The 8 bytes required for the data plus the 24 bytes of overhead brings the total memory requirement for the array to 32 bytes.
A Variant containing an array requires 12 bytes more than the array alone.
Note Use the StrConv function to convert one type of string data to another.
Please send your comments concerning this web page to: David McRitchie send email comments
Copyright © 1997 - 2004, F. David McRitchie, All Rights Reserved