Урегулирование ints к отрицательным величинам, используя шестнадцатеричные опечатки в C#

Есть ли любой способ установить int к отрицательной величине, используя шестнадцатеричную опечатку в C#? Я проверил спецификацию на Целочисленных опечатках, но она ничего не упоминала.

Например:

int a = -1;         // Allowed
int b = 0xFFFFFFFF; // Not allowed?

Шестнадцатеричное примечание более четкое для моего заявления, и я предпочел бы не использовать uints, потому что я должен был бы сделать некоторый дополнительный кастинг.

20
задан M. Dudley 22 January 2010 в 21:07
поделиться

4 ответа

Используйте неверное слово.

unchecked
{
   int b = (int)0xFFFFFFFF;    
}

или даже короче

int b = unchecked((int)0xFFFFFFFF);
25
ответ дан 30 November 2019 в 00:47
поделиться

Я думаю, что вы можете использовать -0х1 с C #

1
ответ дан 30 November 2019 в 00:47
поделиться

Вы можете использовать класс «Convert»:

string hex = "FF7F";
int myInt = Convert.ToInt32(hex, 16);
-1
ответ дан 30 November 2019 в 00:47
поделиться

Вы должны бросить его и положить его в неверный контекст.

unchecked {
    int i = (int)0xFFFFFFFF;
}
1
ответ дан 30 November 2019 в 00:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: