Рассмотрим этот код:
double i = 0xF0000000;
Console.WriteLine(0xF0000000.GetType());
Console.WriteLine(i.GetType());
Почему С# печатает System.UInt32
для первого и System.Double
для второго?
Это потому, что компилятор по умолчанию выводит литерал типа var
?