隐式转化。

           //隐式转化是数据类型转换的一种方式
           //隐式转化 就是小类型转化为大类型
           //类型大小判断可以通过包含关系来区分
           //类型大小判断也可以通过父子关系来区分

           //有符号整型
           //long > int > short > sbyte
           sbyte sb = -10; // -2^7----> 2^7-1
           short sh = sb; // -2^15---> 2^15-1
           int i = sh; // -2^31--->2^31-1
           long l = i; // -2^63---> 2^63-1

           //无符号整形
           //ulong > uint > ushort > byte
           byte b = 10; //1个字节8位 0---> 2^8-1
           ushort us = b; //2个字节16位 0---> 2^16-1
           uint ui = us; //4个字节32位 0---> 2^32-1
           ulong ul = ui; //8个字节64位 0---> 2^64-1

           //有符号类型不能隐式转化为无符号类型 // 因为无符号不包含负数 而有符号类型有负数
           //有符号和无符号之间的包含关系
           //short > byte 
           //int > ushort 
           //long > uint 

           //浮点型
           //double > float
           float f = 0.12f; // 占4个字节 有效数字位数7-8位
           double d = f; // 占8个字节 有效数字 15-18位

           //十进制小数 floa  和 double 无法隐式转化为 decimal 类型
           //decimal 是十进制小数 而 floa 和 double使用二进制形式 所以本质上有所不同
           decimal de = 0.123m; //占16个字节 有效数字位数 28 位

           //浮点型和整形之间的转化
           //任何的浮点型都大于任何的整形
           // 十进制小数也大于任意的整形
           f = l;
           d = ul;
           de = l;

           //bool 类型无法隐式转化为任意其他类型

           //char 字符型
           char c = 'a'; // 存储的是字符的编码值 ascll  是一个无符号整形 存储的数据和无符号 整形 ushort 范围一样
           //char 类型可以隐式转化为ushort
           us = c;

           //字符串
           //字符串无法隐式转化为其他类型 其他类型也无法隐式转化为字符串
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值