在C中,既然有了int,為什么還要有uint?特別是uint16,uint32等又有什么用?他們有什么區(qū)別?”
-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
“int是C/C++數(shù)據(jù)類型,uint,uint16,uint32并不是C/C++內(nèi)建的類型,而只是一些typedef
可能的定義如下
typedef unsinged int uint; //為了省事啊,這樣不用寫unsigned int而只需要寫uint
typedef unsigned short uint16;// int的size取決于平臺,比如16位平臺上sizeof(16)為2,32為上為4,64位上為8
// 而short的size則保證為2字節(jié),在需要明確指明數(shù)據(jù)大小時可以 使用
typedef unsigned long uint32;//道理同上,sizeof(long)一定為32,看看,在64位機上sizeof(long)
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------
“大小的區(qū)別,
int就是一個機器字長
uint就是一個無符號的int
uint16就是一個無符號的16位整型
uint32就是一個無符號的32位整型” |