C#中兩個(gè)byte如何相加
發(fā)現(xiàn)問(wèn)題
有人會(huì)想相加?還不簡(jiǎn)單,用 + 呀。
byte a = 1; byte b = 2; byte c = a + b;
以上代碼是通不過(guò)編譯的,因?yàn)榫幾g器對(duì)待 + 時(shí),有 int 相加、有 decimal 相加、有字符串相加……就是沒(méi)有 byte 相加,所以它會(huì)用最接近的 int 相加,自然返回的結(jié)果也是 int,而 int 類型是不能直接賦值給更小的 byte 類型的。
解決方法
所以,得改成這樣:
byte a = 1; byte b = 2; byte c = (byte)(a + b);
還好 += 不存在這個(gè)問(wèn)題,a += b 是沒(méi)問(wèn)題的。
byte 最大值
byte 最小值是 0,最大值是 255,所以 byte a = 256 是通不過(guò)編譯的。
而 + 超過(guò)的就不一樣了。
byte a = 255; a += 1; // 這里結(jié)果是 0 byte b = 150; b += 150; // 這里結(jié)果是 44,若改為:b = (byte)(b + 150); 是一樣的。
總結(jié)
以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流。
- C# Stream 和 byte[] 之間的轉(zhuǎn)換
- C# 字符串string和內(nèi)存流MemoryStream及比特?cái)?shù)組byte[]之間相互轉(zhuǎn)換
- C# byte數(shù)組與Image相互轉(zhuǎn)換的方法
- C#中Byte[]和String之間轉(zhuǎn)換的方法
- C#實(shí)現(xiàn)Stream與byte[]之間的轉(zhuǎn)換實(shí)例教程
- C#中string與byte[]的轉(zhuǎn)換幫助類-.NET教程,C#語(yǔ)言
- C#中圖片.BYTE[]和base64string的轉(zhuǎn)換方法
- C#中Byte轉(zhuǎn)換相關(guān)的函數(shù)
- C#如何從byte[]中直接讀取Structure實(shí)例詳解
相關(guān)文章
Unity Shader實(shí)現(xiàn)線框效果的制作步驟
最近比較忙,今天抽空給大家分享一篇文章,關(guān)于Unity Shader實(shí)現(xiàn)線框效果,本文給大家分享詳細(xì)制作步驟,通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-06-06
C#winform中數(shù)據(jù)庫(kù)綁定DataGrid的實(shí)現(xiàn)
本文主要介紹了C#winform中數(shù)據(jù)庫(kù)綁定DataGrid的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2022-05-05
C#環(huán)形緩沖區(qū)(隊(duì)列)完全實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了C#環(huán)形緩沖區(qū)(隊(duì)列)完全實(shí)現(xiàn)代碼,感興趣的小伙伴們可以參考一下2016-07-07

