.NET 4.x Объясните, почему операция (byte)i вместо ожидаемого значения -4 дала нам в качестве результата значение 252 - C#
Формулировка задачи:
Рассмотрим эту операцию на примере.
Результат работы программы:
4 252
Задание. Объясните, почему операция (byte)i вместо ожидаемого значения -4 дала нам в качестве результата значение 252.
Помогите пожалуйста, пока не очень разбираюсь.
static void Main()
{
int i = -4;
byte j = 4;
int a = (int)j; //преобразование без потери точности
byte b = (byte)i; //преобразование с потерей точности
Console.WriteLine("{0} {1}", a, b);
}Решение задачи: «.NET 4.x Объясните, почему операция (byte)i вместо ожидаемого значения -4 дала нам в качестве результата значение 252»
textual
Листинг программы
static void Main()
{
int i = -4;
byte j = 4;
int a = (int)j; //преобразование без потери точности
sbyte b = (sbyte)i; //преобразование с потерей точности
Console.WriteLine("{0} {1}", a, b);
}