博客首页 | 排行榜 |

armjishu的博客

个人档案
博文分类
C中int,Uint,uint16等有什么区别以及用处  2009-11-24 13:59

在C中,既然有了int,为什么还要有uint?特别是uint16,uint32等又有什么用?他们有什么区别?”

-----------------------------------------------------------------------------------
-----------------------------------------------------------------------------------

“int是C/C++数据类型,uint,uint16,uint32并不是C/C++内建的类型,而只是一些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字节,在需要明确指明数据大小时可以使用

typedef unsigned long uint32;//道理同上,sizeof(long)一定为32,看看,在64位机上sizeof(long)
-----------------------------------------------------------------------------
-----------------------------------------------------------------------------

“大小的区别,
int就是一个机器字长
uint就是一个无符号的int
uint16就是一个无符号的16位整型
uint32就是一个无符号的32位整型”

在源程序中经常可以看到uint uint 16 uint 32这些,在此得到解答

http://www.armjishu.com/bbs/viewtopic.php?id=2151

类别:默认 |
下一篇:MMU是Memory Management Unit的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来管理虚拟存储器、物理存储器的控制线路,同时也负责虚拟地址映射为物理地址,以及提供硬件机制的内存访问授权。
以下网友评论只代表其个人观点,不代表本网站的观点或立场