uint 数据类型解释

转载 2012年03月31日 13:09:09

http://hi.baidu.com/in__peking/blog/item/95a126ecb7fab7242cf5348e.html

简单的说,u:unsigned,int:整型 8:bit位数
typedef unsigned char   uint8_t;

Specific integral type limits 
Specifier    Common Equivalent   Signing         Bits   Bytes   Minimum Value                               Maximum Value 
int8_t          signed char                  Signed           8       1           −128                                                  127 
uint8_t       unsigned char              Unsigned      8       1            0                                                        255 
int16_t       short                               Signed           16     2          −32, 768                                            32,767 
uint16_t     unsigned short            Unsigned      16     2            0                                                        65,535 
int32_t       int                                    Signed           32     4          −2,147,483,648                               2,147,483,647 
uint32_t     unsigned int                 Unsigned      32     4             0                                                       4,294,967,295 
int64_t       long long                       Signed            64    8         −9,223,372,036,854,775,808        9,223,372,036,854,775,807 
uint64_t     unsigned long long     Unsigned      64    8             0                                                       18,446,744,073,709,551,615 

上面是一些与平台无关的数据类型,由于在32位机器和64位机器中,long占据不同的字节数,所以推荐使用上面的类型。
上面的类型的头文件是stdint.h

uint8_t,uint16_t,uint32_t等都不是什么新的数据类型,它们只是使用typedef给类型起的别名,新瓶装老酒的把戏。不过,不要小看了typedef,它对于你代码的维护会有很好的作用。比如C中没有bool,于是在一个软件中,一些程序员使用int,一些程序员使用short,会比较混乱,最好就是用一个typedef来定义,如:
typedef char bool
一般来说,一个C的工程中一定要做一些这方面的工作,因为你会涉及到跨平台,不同的平台会有不同的字长,所以利用预编译和typedef可以让你最有效的维护你的代码。为了用户的方便,C99标准的C语言硬件为我们定义了这些类型,我们放心使用就可以了。

按照posix标准,一般整形对应的*_t类型为:
1字节 uint8_t
2字节 uint16_t
4字节 uint32_t
8字节 uint64_t

Swift中的数据类型

数据类型 swift 中常见的数据类型 Int 、Float、Double、Character、String Array、Dictonary、元组类型(Tuple)、可选类型(Optional)...
  • u012701023
  • u012701023
  • 2015年10月02日 19:10
  • 996

跨平台C/C++数据类型定义

1       需考虑问题 1.1    编译器运行操作系统 l        WINDOWS :  _WIN32、WIN32; l        UNIX/LINUX:  unix...
  • damenhanter
  • damenhanter
  • 2014年06月28日 23:36
  • 2837

[C#]Vista的核心音频API主音量控制

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.R...
  • qq283868910
  • qq283868910
  • 2011年12月07日 15:57
  • 1151

JavaScript的数据类型、null 和undefined、原始数据类型和引用数据类型等JavaScript基础知识总结

一、JavaScript里有哪些数据类型,解释清楚null 和undefined,解释清楚原始数据类型和引用数据类型。比如讲一下1 和Number(1)的区别 数据类型:        undef...
  • Fabulous1111
  • Fabulous1111
  • 2017年03月06日 19:07
  • 9597

wfp数据类型转换--Uint16转二进制字符串

以下代码可以完成无符号16位数转换成二进制表示的字符串,修改compData还可以转换成12位的二进制,或者 也可以Uint32转换成32位、24位的二进制字符串形式,利用staticResourc...
  • lorgenlorgen
  • lorgenlorgen
  • 2015年07月30日 20:41
  • 817

OpenGL 数据类型

OpenGL 数据类型首先我们要讨论的是OpenGL的数据类型。因为OpenGL是一个跨平台的API,数据类型的大小会随使用的编程语言以及处理器(64位,32位,16位)等的不同而不同,所以OpenG...
  • xiaoquanhuang
  • xiaoquanhuang
  • 2011年07月15日 14:12
  • 6759

Eclipse中单片机编程uint64用法

功能:数据已存入uint8 au8Data[MAX]中,其中1-16位为00158d0000a6b51f,实现将其保存到uint64变量destaddress中。   Eclipse下C语言源码为...
  • daxiang12092205
  • daxiang12092205
  • 2012年08月30日 20:18
  • 1267

GLSL 数据类型和限定符

GLSL的语言定义: 数据类型: 1、标量 float :声明一个单独的浮点数 int :声明一个单独的整数 uint  :声明一个无符号的整数 bool :声明一个单独的布尔数 不支持默认类型,必须...
  • sinat_26368235
  • sinat_26368235
  • 2015年09月25日 20:27
  • 1583

GDAL中GDALDataType中值与其在C++中数据类型对应

GDAL中的GDALDataType是一个枚举型,其中的值为: GDT_Unknown : 未知数据类型 GDT_Byte : 8bit正整型 (C++中对应unsigned char) GDT_UI...
  • sugeryao
  • sugeryao
  • 2015年11月22日 12:04
  • 580

Unity开发基础——基本数据类型学习笔记

Unity开发基础基本数据类型学习笔记:sbyte、byte、short、ushort、int、uint、long、ulong8个是整数,他们之间的区别就是表示氛围不一样,而对于范围不一样的根本原因是...
  • sinat_35761779
  • sinat_35761779
  • 2016年08月09日 14:48
  • 1129
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:uint 数据类型解释
举报原因:
原因补充:

(最多只允许输入30个字)