using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace _2.数据类型{    class Program    {        static void Main(string[] args)        {            // 整数类型            byte myByte = 80;            ushort myUShort = 67;            int myInt = -99;            ulong myULong = 45679788;            Console.WriteLine("myByte: {0}", myByte);            Console.WriteLine("myUShort: {0}", myUShort);            Console.WriteLine("myInt: {0}", myInt);            Console.WriteLine("myULong: {0}", myULong);                        // 浮点类型            /* 因为浮点类型字面值默认为double类型,所以             * 在给float和decimal类型变量赋值时,必须             * 在字面值后面添加后缀。             * float类型变量需添加后缀f或F。             * double类型变量需添加后缀d或D。             * decimal类型变量需添加后缀m或M。             */             float myFloat = 3.14F;            double myDouble = 56.4689;            decimal myDecimal = 45487.54679796464M;            Console.WriteLine("myFloat: {0}", myFloat);            Console.WriteLine("myDouble: {0}", myDouble);            Console.WriteLine("myDecimal: {0}", myDecimal);                        // 字符类型            char myChar = 'A';            Console.WriteLine("myChar: {0}", myChar);                        // 布尔类型            bool myBool = true;            Console.WriteLine("myBool: {0}", myBool);                        // object类型            object myObject = 100;            Console.WriteLine("myObject Type: {0}, Value: {1}", myObject.GetType(), myObject);                        // dynamic类型            dynamic myDynamic = 'A';            Console.WriteLine("myDynamic Type: {0}, Value: {1}", myDynamic.GetType(), myDynamic);                        // string类型            string myString = "Hello, World";            Console.WriteLine("myString: {0}", myString);                        // sizeof方法            // 用法: sizeof(type)            Console.WriteLine("int类型占用{0}字节", sizeof(int));                        Console.ReadKey();        }    }}/** * 一、值类型 * 值类型都是从System.ValueType类中派生出来的。 * (1) 整数类型(默认值为0) * A) 有符号整数类型 *    sbyte     别名System.Byte   占用1个字节 *    short     别名System.Int16  占用2个字节 *    int       别名System.Int32  占用4个字节 *    long      别名System.Int64  占用8个字节 * B) 无符号整数类型 *    byte      别名System.SByte  占用1个字节 *    ushort    别名System.UInt16 占用2个字节 *    uint      别名System.UInt32 占用4个字节 *    ulong     别名System.UInt64 占用8个字节 * (2) 浮点类型 *    float     别名System.Single  占用4个字节  默认值为0.0F  *    double    别名System.Double  占用8个字节  默认值为0.0D *    float和double类型以+/-m*2^e形式表示,m和e的值因类型而异。 *     *    decimal   别名System.Decimal 占用16个字节 默认值为0.0M *    decimal类型以+/-m*10^e形式表示。 * (3) 字符类型(无符号类型),可表示Unicode字符,可存储中文字符。 *    char      别名System.Char    占用2个字节  默认值为'\0' * (4) 布尔类型 *    bool      别名System.Boolean 布尔值: true和false, 默认值为false *  * 二、引用类型 * (1) object类型 * object类型是C#通用类型系统(Common Type System)中所有数据类型的终极基类。 * object类型可以被分配任何其他类型(值类型、引用类型、预定义类型或用户自定义类型)的值。 * object类型变量在编译时进行类型检查。 * (2) dynamic类型 * dynamic类型变量可以存储任何类型的值。 * dynamic类型变量在运行时进行类型检查。 * (3) string类型 * string类型允许给变量分配任何字符串,没有长度限制。 * string类型是System.String类的别名。 *  * 三、指针类型 * 指针类型变量存储另一种类型的内存地址。 * 声明指针类型语法: *  type* identifier; *   * 例如: *  char* cptr; *  int*  iptr; *   */