Chapter 1. Numbers
Simple types
are value
types that are a subset of the built-in types in Visual C# .NET,
although, in fact, the types are defined as part of the .NET
Framework Class Library (.NET FCL). Simple types are made up of
several numeric types and a bool type. These
numeric types consist of a decimal type (decimal),
nine integral types (byte,
char, int,
long, sbyte,
short, uint,
ulong, ushort), and two
floating-point types (float,
double). Table 1-1 lists the
simple types and their fully qualified names in the .NET Framework.
Table 1-1. The simple data types|
System.Boolean
|
bool
|
true or false
|
System.Byte
|
byte
|
0 to 255
|
System.SByte
|
sbyte
|
-128 to 127
|
System.Char
|
char
|
0 to 65535
|
System.Decimal
|
decimal
|
-79,228,162,514,264,337,593,543,950,335 to
79,228,162,514,264,337,593,543,950,335
|
System.Double
|
double
|
-1.79769313486232e308 to 1.79769313486232e308
|
System.Single
|
float
|
-3.402823e38 to 3.402823e38
|
System.Int16
|
short
|
-32768 to 32767
|
System.Uint16
|
ushort
|
0 to 65535
|
System.Int32
|
int
|
-2,147,483,648 to 2,147,483,647
|
System.UInt32
|
uint
|
0 to 4,294,967,295
|
System.Int64
|
long
|
-9,223,372,036,854,775,808 to 9,223,372,036,854,775,807
|
System.UInt64
|
ulong
|
0 to 18,446,744,073,709,551,615
|
The C# reserved words for the various data types are simply aliases
for the fully qualified type name. Therefore, it does not matter
whether you use the type name or the reserved word: the C# compiler
will generate identical code.
It should be noted that the following types are not
CLS-compliant:
sbyte, ushort,
uint, and ulong. These types do
not conform to the rules governing CLS types and therefore, they
might not be supported by other .NET languages. This lack of support
might limit or impede the interaction between your C# code and code
written in another CLS-compliant language, such as Visual Basic .NET.
|