手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#中两个byte如何相加
C#中两个byte如何相加
摘要:发现问题有人会想相加?还不简单,用+呀。bytea=1;byteb=2;bytec=a+b;以上代码是通不过编译的,因为编译器对待+时,有i...

发现问题

有人会想相加?还不简单,用 + 呀。

byte a = 1; byte b = 2; byte c = a + b;

以上代码是通不过编译的,因为编译器对待 + 时,有 int 相加、有 decimal 相加、有字符串相加……就是没有 byte 相加,所以它会用最接近的 int 相加,自然返回的结果也是 int,而 int 类型是不能直接赋值给更小的 byte 类型的。

解决方法

所以,得改成这样:

byte a = 1; byte b = 2; byte c = (byte)(a + b);

还好 += 不存在这个问题,a += b 是没问题的。

byte 最大值

byte 最小值是 0,最大值是 255,所以 byte a = 256 是通不过编译的。

而 + 超过的就不一样了。

byte a = 255; a += 1; // 这里结果是 0 byte b = 150; b += 150; // 这里结果是 44,若改为:b = (byte)(b + 150); 是一样的。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

【C#中两个byte如何相加】相关文章:

程序中两个Double类型相加出现误差的解决办法

解析C#中如何把控件的边框角画为圆弧

基于C# 中可以new一个接口?的问题分析

C#中常使用进度条的代码

关于C# TabPage如何隐藏的问题

C# 中的??操作符浅谈

C#计算两个文件的相对目录算法的实例代码

C#如何取硬件标志

C# 如何判断两个文件内容是否相同的方法

C# 一个WCF简单实例

精品推荐
分类导航