Почему преобразование логического
в байт
в .NET дает следующее output?
Фрагмент кода:
Dim x As Boolean = 1
Dim y As Byte = x 'Implicit conversion here from Boolean to Byte
System.Diagnostics.Debug.Print( _
"x = " & x.ToString _
& " y = " & y.ToString _
& " (bool)(1) = " & CType(1, Boolean).ToString _
& " (byte)((bool)1) = " & CType((CType(1, Boolean)), Byte).ToString)
Вывод:
x = True
y = 255
(булево) (1) = Истина
(byte) ((bool) 1) = 255
Почему True
(которое обычно называется целочисленным представлением 1) преобразуется в 255 при преобразовании в байт
?