SByte-adattípus (Visual Basic)
A -128 és 127 közötti értéktartományú aláírt 8 bites (1 bájtos) egész számokat tárolja.
Megjegyzések
SByte
Az adattípussal olyan egész számértékeket tartalmazhat, amelyekhez nem szükséges a teljes adatszélesség, vagy akár a fél adatszélesség Integer
semShort
. Bizonyos esetekben a közös nyelvi futtatókörnyezet képes lehet szorosan összecsomagolni a változókat, és menteni a SByte
memóriahasználatot.
Az alapértelmezett érték SByte
0.
Konstans hozzárendelések
A SByte
változók deklarálhatók és inicializálhatók úgy, hogy decimális literált, hexadecimális literált, oktális literált vagy (a Visual Basic 2017-től kezdődően) bináris literált rendelnek hozzá.
Az alábbi példában a -102-nek felel meg az egész szám, amely decimális, hexadecimális és bináris literálként van megadva az értékekhez SByte
. Ebben a példában a fordítókapcsolóval kell fordítást /removeintchecks
készíteni.
Dim sbyteValue1 As SByte = -102
Console.WriteLine(sbyteValue1)
Dim sbyteValue4 As SByte = &H9A
Console.WriteLine(sbyteValue4)
Dim sbyteValue5 As SByte = &B1001_1010
Console.WriteLine(sbyteValue5)
' The example displays the following output:
' -102
' -102
' -102
Feljegyzés
Az előtagot &h
vagy &H
egy hexadecimális literált, az előtagot &b
vagy &B
egy bináris literál jelölését, valamint az előtagot &o
vagy &O
egy oktális literál jelölését használhatja. A tizedes literálok nem rendelkeznek előtaggal.
A Visual Basic 2017-től kezdve az aláhúzásjelet is használhatja számjegyelválasztóként _
az olvashatóság javítása érdekében, ahogy az alábbi példa is mutatja.
Dim sbyteValue3 As SByte = &B1001_1010
Console.WriteLine(sbyteValue3)
' The example displays the following output:
' -102
A Visual Basic 15.5-től kezdve az aláhúzásjelet (_
) is használhatja vezető elválasztóként az előtag és a hexadecimális, bináris vagy oktális számjegyek között. Példa:
Dim number As SByte = &H_F9
Ha az aláhúzásjelet vezető elválasztóként szeretné használni, a következő elemet kell hozzáadnia a Visual Basic-projektfájlhoz (*.vbproj):
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
További információ: A Visual Basic nyelvi verziójának kiválasztása.
Ha az egész szám konstansa kívül esik a tartományon SByte
(vagyis kisebb vagy nagyobb, mint SByte.MinValueSByte.MaxValue), fordítási hiba lép fel. Ha egy egész szám konstansának nincs utótagja, a függvény egy egész számot is kikövetkeztet. Ha az egész szám literálja kívül esik a Integer
típus tartományán, a hosszú érték lesz kikövetkeztetve. Ez azt jelenti, hogy az előző példákban a numerikus literálok 0x9A
0b10011010
32 bites aláírt egész számokként vannak értelmezve, amelyek értéke 156, ami meghaladja SByte.MaxValuea . A nem decimális egész számokat SByte
egyhez rendelő kód sikeres fordításához tegye az alábbiak egyikét:
Az egész számhatárok ellenőrzésének letiltása a
/removeintchecks
fordítókapcsolóval való összeállítással.Használjon típuskarakte-karaktert a hozzá rendelni kívánt literális érték explicit definiálásához
SByte
. Az alábbi példa negatív literálértéketShort
rendel hozzá egySByte
. Ne feledje, hogy negatív számok esetén a számkonstans magasrendű szójának nagyrendű bitét kell beállítani. A példánk esetében ez a literálisShort
érték 15 bitese.Dim sByteValue1 As SByte = &HFF_9As Dim sByteValue2 As SByte = &B1111_1111_1001_1010s Console.WriteLine(sByteValue1) Console.WriteLine(sByteValue2)
Programozási tippek
CLS-megfelelőség. Az
SByte
adattípus nem része a Common Language Specification (CLS)-nek, ezért a CLS-kompatibilis kód nem tud olyan összetevőt használni, amely azt használja.Szélesedő. Az
SByte
adattípus a következőre szélesedikShort
: ,Integer
,Long
,Decimal
,Single
ésDouble
. Ez azt jelenti, hogy bármilyen ilyen típusra konvertálhatSByte
anélkül, hogy hiba merült fel System.OverflowException .Írja be a karaktereket.
SByte
nem rendelkezik literális típuskaraktere vagy azonosítótípus-karaktere.Keretrendszer típusa. A .NET-keretrendszer megfelelő típusa a System.SByte struktúra.
Lásd még
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: