關(guān)于byte是什么意思?這個(gè)問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、(C#)byte 關(guān)鍵字代表一種整型,該類型按下表所示存儲(chǔ)值: 類型 范圍 大小 .NET Framework 類型 byte 0 到 255 無符號(hào) 8 位整數(shù) System.Byte 標(biāo)識(shí)符 可如下例所示聲明并初始化 byte 類型的變量: 復(fù)制代碼 byte myByte = 255; 在以上聲明中,整數(shù) 255 從 int 隱式轉(zhuǎn)換為 byte。
2、如果整數(shù)超出了 byte 的范圍,將產(chǎn)生編譯錯(cuò)誤。
3、 轉(zhuǎn)換 存在從 byte 到 short、ushort、int、uint、long、ulong、float、double 或 decimal 的預(yù)定義隱式轉(zhuǎn)換。
4、 不能將更大存儲(chǔ)大小的非文本數(shù)值類型隱式轉(zhuǎn)換為 byte。
5、有關(guān)整型的存儲(chǔ)大小的更多信息,請(qǐng)參見整型表(C# 參考)。
6、例如,請(qǐng)看以下兩個(gè) byte 變量 x 和 y: 復(fù)制代碼 byte x = 10, y = 20; 以下賦值語句將產(chǎn)生一個(gè)編譯錯(cuò)誤,原因是賦值運(yùn)算符右側(cè)的算術(shù)表達(dá)式在默認(rèn)情況下的計(jì)算結(jié)果為 int 類型。
7、 復(fù)制代碼 // Error: conversion from int to byte: byte z = x + y; 若要解決此問題,請(qǐng)使用強(qiáng)制轉(zhuǎn)換: 復(fù)制代碼 // OK: explicit conversion: byte z = (byte)(x + y); 但是,在目標(biāo)變量具有相同或更大的存儲(chǔ)大小時(shí),使用下列語句是可能的: 復(fù)制代碼 int x = 10, y = 20; int m = x + y; long n = x + y; 同樣,不存在從浮點(diǎn)型到 byte 類型的隱式轉(zhuǎn)換。
8、例如,除非使用顯式強(qiáng)制轉(zhuǎn)換,否則以下語句將生成一個(gè)編譯器錯(cuò)誤: 復(fù)制代碼 // Error: no implicit conversion from double: byte x = 3.0; // OK: explicit conversion: byte y = (byte)3.0; 調(diào)用重載方法時(shí),必須使用顯式轉(zhuǎn)換。
9、以下面使用 byte 和 int 參數(shù)的重載方法為例: 復(fù)制代碼 public static void SampleMethod(int i) {} public static void SampleMethod(byte b) {} 使用byte 強(qiáng)制轉(zhuǎn)換可保證調(diào)用正確的類型,例如: 復(fù)制代碼 // Calling the method with the int parameter: SampleMethod(5); // Calling the method with the byte parameter: SampleMethod((byte)5); 有關(guān)兼用浮點(diǎn)型和整型的算術(shù)表達(dá)式的信息,請(qǐng)參見 float 和 double。
10、 (java) 個(gè)人看法,unsigned char 和 signed char 在應(yīng)該是一樣的,只不過在判斷 ASCII的本地化問題上,signed char 定義的字符如果 < 0 就是本地的, >0 就是通用的。
11、這里使用signed char 比 unsigned char 可能好一些吧。
12、當(dāng)然如果區(qū)分的不是很清楚,或者是有人習(xí)慣使用 0 - 255的ASCII碼表,那么它就是用unsigned char 嘍。
13、 求采納。
本文分享完畢,希望對(duì)大家有所幫助。
標(biāo)簽:
免責(zé)聲明:本文由用戶上傳,如有侵權(quán)請(qǐng)聯(lián)系刪除!