簡體   English   中英

C#字節計算器

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM