using System;
namespace _001_003_002_BuiltInTypesCLSCompliant
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("compatível com a CLS (Common Language Specification)");
Console.WriteLine();
Console.WriteLine("Alias\tTamanho\tTipo\t\tValorPadrão\tMin\tMax");
Console.WriteLine("byte\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Byte) * 8,
typeof(Byte), default(Byte), Byte.MinValue, Byte.MaxValue);
Console.WriteLine("short\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Int16) * 8,
typeof(Int16), default(Int16), Int16.MinValue, Int16.MaxValue);
Console.WriteLine("int\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Int32) * 8,
typeof(Int32), default(Int32), Int32.MinValue, Int32.MaxValue);
Console.WriteLine("long\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Int64) * 8,
typeof(Int64), default(Int64), Int64.MinValue, Int64.MaxValue);
Console.WriteLine("char\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Char) * 8,
typeof(Char), (int)default(Char), (int)Char.MinValue, (int)Char.MaxValue);
Console.WriteLine("bool\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Boolean) * 8,
typeof(Boolean), default(Boolean), "N/A", "N/A");
Console.WriteLine("float\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Single) * 8,
typeof(Single), default(Single), Single.MinValue, Single.MaxValue);
Console.WriteLine("double\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Double) * 8,
typeof(Double), default(Double), Double.MinValue, Double.MaxValue);
Console.WriteLine("decimal\t{0}\t{1}\t{2}\t\t{3}\t{4}", sizeof(Decimal) * 8,
typeof(Decimal), default(Decimal), Decimal.MinValue, Decimal.MaxValue);
Console.WriteLine("string\t{0}\t{1}\t{2}\t\t{3}\t{4}", "N/A", typeof(String),
default(String) == null ? "null" : "", "N/A", "N/A");
Console.WriteLine("object\t{0}\t{1}\t{2}\t\t{3}\t{4}", "N/A", typeof(Object),
default(Object) == null ? "null" : "", "N/A", "N/A");
Console.WriteLine("dynamic\t{0}\t{1}\t{2}\t\t{3}\t{4}", "N/A", "System.Object",
default(dynamic) == null ? "null" : "", "N/A", "N/A");
Console.ReadKey();
}
}
}