2010-02-21 4 views
9

В чем разница между Int32 и UInt32?В чем разница между Int32 и UInt32?

Если они одинаковы с возможностями диапазона мощности, возникает вопрос, по какой причине было создано UInt32? Когда следует использовать UInt32 вместо Int32?

+0

Знаете ли вы разницу между целыми числами без знака? – 2010-02-21 20:04:51

+0

@Moron: Йена, я знаю. просто думая о UInt32 как о «неуправляемом int32» вместо «unsigned int32». hhaaa !! –

+0

Голосование закрывается как «слишком локализованное», так как этот вопрос полезен только для людей, которые считают, что UInt32 означает «неуправляемый int32». Я не думаю, что больше этих людей осталось. –

ответ

31

UInt32 не допускает отрицательных чисел. От MSDN:

Тип значения UInt32 представляет собой целые числа без знака со значениями от 0 до 4,294,967,295.

+0

+1 для объяснения того, для чего был U. – tsilb

9

Целое является -2147483648 до 2147483647 и беззнаковое целое число от 0 до 4294967295.

Эта статья может помочь вам:

http://www.csharp-station.com/Tutorials/Lesson02.aspx 
1

UInt32 беззнаковым. Он не может использоваться для представления отрицательных чисел, но может содержать большие положительные числа.

4

uint32 - целое число без знака с 32 бит, что означает, что вы можете представить 2^32 числа (0-4294967295).

Однако для представления отрицательных чисел один бит из 32 бит зарезервирован для указания положительного или отрицательного числа. это оставляет вас с 2^31 возможных чисел в отрицательном, а также в положительном. результирующий диапазон от -2147483648 до 2147483647 (положительный диапазон включает в себя значение 0, следовательно, только 2147483647). это представление называется int32.

Вы должны выбрать unsigned для чисел, которые по определению не могут быть отрицательными, поскольку он предлагает вам более широкий диапазон, но вы должны иметь в виду, что преобразование из и в int32 невозможно, так как int32 не может удерживать диапазон uint32 и наоборот.

 Смежные вопросы

  • Нет связанных вопросов^_^