[英]C# Byte Calculator
我的問題是,例如,當我將0x02
添加到0xFF
,我得到的值是0x101
,這是理所當然的,但是從0xFF + 0x02
獲得值0x01
還是有可能的 因此,如果值超過0xFF
,它將重置為0x00
。
修改為0x100
result = (0x02+0xff)%0x100
如果要獲取一個byte
我們將其IntegerOverflowException
轉換為byte
(並在unchecked
的情況下,在可能溢出的情況下切換IntegerOverflowException
):
byte a = 0x02;
byte b = 0xFF;
// unchecked: do not throw exception on overflow
byte result = unchecked((byte) (a + b));
或(如果要執行的操作很多 ):
byte a = 0x02;
byte b = 0xFF;
unchecked {
byte result1 = (byte) (a + b);
byte result2 = (byte) (2 * a + b);
...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.