Есть ли любой способ установить int
к отрицательной величине, используя шестнадцатеричную опечатку в C#? Я проверил спецификацию на Целочисленных опечатках, но она ничего не упоминала.
Например:
int a = -1; // Allowed
int b = 0xFFFFFFFF; // Not allowed?
Шестнадцатеричное примечание более четкое для моего заявления, и я предпочел бы не использовать uint
s, потому что я должен был бы сделать некоторый дополнительный кастинг.
Используйте неверное слово.
unchecked
{
int b = (int)0xFFFFFFFF;
}
или даже короче
int b = unchecked((int)0xFFFFFFFF);
Вы можете использовать класс «Convert»:
string hex = "FF7F";
int myInt = Convert.ToInt32(hex, 16);
Вы должны бросить его и положить его в неверный контекст.
unchecked {
int i = (int)0xFFFFFFFF;
}