UINT類型在WINDOWS API中有定義,它對應於32位無符號整數。
無符號整型(unsigned int):取值是 2^31 - 1,即:0~4294967295
就拿十進制的32767(以下的所有舉例均拿這個數字來説事了)來説,它的二進制為:
0111 1111 1111 1111
對於無符號的整型32767來説,它的二進制的最高位稱為數據位,即那個0就是數據位,數據位是要參與運算的,如果我們把0改成1,即16個1,它的十進制就是65535(就是2的15次方+2的14次方...一直加到2的0次方),這是不同於有符號整型的。
有無符號的根本原因可以説就是因為數據出現了溢出現象導致的。
無符號值可以避免誤存負數,且擴大了表示範圍。