Tag Archives: Types

Available Datatypes for Visual Basic .NET* – from Microsoft

Click Star to Rate Post
1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)

I got the following table from Microsoft. Click this link to go to the actual page. Thought maybe it would help beginners or reminders.

*The information in the chart can also be applied to VB.NET 2002/2003 except for the uShort, uInteger, and uLong. Unsigned types are not supported in the earlier 1.0/1.1 .NET Framework versions.

The following table shows the Visual Basic data types, their supporting common language runtime types, their nominal storage allocation, and their value ranges.

Visual Basic typeCommon language runtime type structureNominal storage allocationValue range
BooleanBooleanDepends on implementing platform—-True or False—-
ByteByte1 byte—-0 through 255 (unsigned)—-
Char (single character)Char2 bytes—-0 through 65535 (unsigned)—-
DateDateTime8 bytes—-0:00:00 (midnight) on January 1, 0001 through 11:59:59 PM on December 31, 9999—-
DecimalDecimal16 bytes—-0 through +/-79,228,162,514,264,337,593,543,950,335 (+/-7.9…E+28) with no decimal point; 0 through +/-7.9228162514264337593543950335 with 28 places to the right of the decimal;smallest nonzero number is +/-0.0000000000000000000000000001 (+/-1E-28) —-
Double (double-precision floating-point)Double8 bytes—–1.79769313486231570E+308 through -4.94065645841246544E-324 for negative values;4.94065645841246544E-324 through 1.79769313486231570E+308 for positive values <Ends>—-
IntegerInt324 bytes—–2,147,483,648 through 2,147,483,647 (signed)—-
Long (long integer)Int648 bytes—–9,223,372,036,854,775,808 through 9,223,372,036,854,775,807 (9.2…E+18 ) (signed)—-
ObjectObject (class)4 bytes on 32-bit platform8 bytes on 64-bit platform—-Any type can be stored in a variable of type Object—-
SByteSByte1 byte—–128 through 127 (signed)—-
Short (short integer)Int162 bytes—–32,768 through 32,767 (signed)—-
Single (single-precision floating-point)Single4 bytes—–3.4028235E+38 through -1.401298E-45 for negative values;1.401298E-45 through 3.4028235E+38 for positive values—-
String (variable-length)String (class)Depends on implementing platform—-0 to approximately 2 billion Unicode characters—-
UIntegerUInt324 bytes—-0 through 4,294,967,295 (unsigned)—-
ULongUInt648 bytes—-0 through 18,446,744,073,709,551,615 (1.8…E+19 ) (unsigned)—-
User-Defined (structure)(inherits from ValueType)Depends on implementing platform—-Each member of the structure has a range determined by its data type and independent of the ranges of the other members—-
UShortUInt162 bytes—-0 through 65,535 (unsigned)—-

In scientific notation, “E” refers to a power of 10. So 3.56E+2 signifies 3.56 x 102 or 356, and 3.56E-2 signifies 3.56 / 102 or 0.0356.