您好,登錄后才能下訂單哦!
小編給大家分享一下uint16指的是什么數(shù)據(jù)類型,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
uint16是16位無符號整型;整型有無符號和有符號兩種類型,在默認情況下聲明的整型變量都是有符號的類型,如果需聲明無符號類型的話就需要在類型前加上unsigned。
本文操作環(huán)境:Windows7系統(tǒng),DELL G3電腦
uint16是什么數(shù)據(jù)類型?
uint16是16位無符號整型,uint8是8位無符號整型
整型有無符號(unsigned)和有符號(signed)兩種類型,在默認情況下聲明的整型變量都是有符號的類型(char有點特別),如果需聲明無符號類型的話就需要在類型前加上unsigned。在一些不可能取值為負數(shù)的時候,可以定義為unsigned,在一些底層的嵌入式編程的數(shù)據(jù)一般都是無符號。
相關介紹:
負數(shù)時的有符號整型和無符號整型的轉換
當執(zhí)行一個運算時(如這里的a>b),如果它的一個運算數(shù)是有符號的而另一個數(shù)是無符號的,那么C語言會隱式地將有符號 參數(shù)強制類型為無符號數(shù),并假設這兩個數(shù)都是非負的,來執(zhí)行這個運算。
整數(shù)在計算機中通常是以補碼的形式存在的,而-1的補碼(用4個字節(jié)儲存)為1111,1111,1111,1111。對大多數(shù)C語言的實現(xiàn),處理同樣字長的有符號數(shù)和無符號數(shù)之間的相互轉換的一般規(guī)則是:數(shù)值可能會改變,但是位模式不變。
也就是說,將unsigned int強制類型轉換成int,或將int轉換成unsigned int底層的位表示保持不變。也就是說,即使是-1轉換成unsigned int之后,它在內存中的表示還是沒有改變,即1111,1111,1111,1111。
同樣的儲存表示對于應用程序而言可能對應著不同的數(shù)據(jù),例如1111,1111,1111,1111對于有符號數(shù)而言它表示-1,但對于無符號數(shù)而言,它表示UMax(因為沒有符號位,就像正數(shù)的反碼補碼都是它本身一樣,且最高位也不表示符號位),但是它們的底層存儲都是一樣的。
以上是“uint16指的是什么數(shù)據(jù)類型”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。