Header boost/cstdint.hpp

头文件 boost/cstdint.hpp 

头文件 <boost/cstdint.hpp> 提供了用于编写要求指定整数宽度的可移植代码的 typedef. 所有 typedef 均位于名字空间 boost.

本规范是基于 ISO/IEC 9899:1999 C 语言标准的头文件 <stdint.h> 的。C标准所要求的64位类型没有在 boost 头文件中要求,也可能不被实现支持,因为 long long 还未被包含在 C++ 标准中。

测试程序请见 cstdint_test.cpp.

精确宽度的整数类型

typedef int#_t, 其中 # 代表宽度,表示一个宽度恰好为 # 位的有符号整数类型;如 int8_t 表示8-位的有符号整数类型。同样,typedef uint#_t 表示一个宽度恰好为 # 位的无符号整数类型。

这些类型是可选的。不过,如果一个实现提供了宽度为 8, 16, 32, 或 64 位的整数类型,它就应该定义相应的 typedef 名字。

最小宽度的整数类型

typedef int_least#_t, 其中 # 代表宽度,表示一个宽度至少为 # 位的有符号整数类型,且没有位数更少的有符号整数类型至少具有给定的宽度。因此,int_least32_t 表示一个至少32位的有符号整数类型。同样,typedef uint_least#_t 表示一个宽度至少为 # 位的无符号整数类型,且没有位数更少的无符号整数类型至少具有给定的宽度。

需具备的最小宽度整数类型:

  • int_least8_t
  • int_least16_t
  • int_least32_t
  • uint_least8_t
  • uint_least16_t
  • uint_least32_t

其它所有最小宽度整数类型都是可选的。

最快最小宽度整数类型

typedef int_fast#_t, 其中 # 代表宽度,表示宽度至少为 # 位的且速度最快的有符号整数类型。同样 typedef uint_fast#_t 表示宽度至少为 # 位的且速度最快的无符号整数类型。

不能保证这些类型对于所有用途都是最快的。不过在任何情况下,它们都满足符号和宽度的要求。

需具备的最快最小宽度整数类型:

  • int_fast8_t
  • int_fast16_t
  • int_fast32_t
  • uint_fast8_t
  • uint_fast16_t
  • uint_fast32_t

其它所有最快最小宽度整数类型都是可选的。

最大宽度整数类型

typedef intmax_t 表示一个有符号整数类型,它可以表示任意有符号整数类型的值。

typedef uintmax_t 表示一个无符号整数类型,它可以表示任意无符号整数类型的值。

这两个类型都是必需的。

头文件 boost/cstdint.hpp的更多相关文章

  1. xe7 c++builder 日期时间头文件函数大全 date

    c++builde r时间日期函数大全,在头文件System.DateUtils.hpp,不过没有IncMonth,因为这个函数定义在System.SysUtils.hpp里头了,唉 date,dat ...

  2. boost.spirit之解析C++头文件

    环境:win7_64旗舰版,VS2008 场景:C++与lua交互是比较繁琐的,当我们编写一个C++类后,如果要给lua使用,就必须写一个lua包装类,将lua与原始C++类关联起来.其实这部分代码编 ...

  3. boost/config.hpp文件详解

    简要概述 今天突发奇想想看一下boost/config.hpp的内部实现,以及他有哪些功能. 这个头文件都有一个类似的结构,先包含一个头文件,假设为头文件1,然后包含这个头文 件中定义的宏.对于头文件 ...

  4. hpp头文件与h头文件的区别

    hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再将cpp加入到project中进行编译.而实现代码将直接 ...

  5. 对opencv.hpp头文件的认识

    OpenCV学习笔记(二):对opencv.hpp头文件的认识 - 安东的技术博客 - CSDN博客 https://blog.csdn.net/xidiancoder/article/details ...

  6. C++-模板的声明和实现为何要放在头文件中

    源: http://blog.csdn.net/lqk1985/archive/2008/10/24/3136364.aspx 如何组织编写模板程序 发表日期: 1/21/2003 12:28:58 ...

  7. C ++模板的声明和实现为何要放在头文件中?

    源: http://blog.csdn.net/lqk1985/archive/2008/10/24/3136364.aspx 如何组织编写模板程序 发表日期: 1/21/2003 12:28:58 ...

  8. Xcode增加头文件搜索路径的方法

    Xcode增加头文件搜索路径的方法 以C++工程为例: 在Build Settings 页面中的Search Paths一节就是用来设置头文件路径. 相关的配置项用红框框起来了,共有三个配置项: He ...

  9. Objective-C声明在头文件和实现文件中的区别

    Objective-C声明在头文件和实现文件中的区别 转自codecloud(有整理) 调试程序的时候,突然想到这个问题,百度一下发现有不少这方面的问答,粗略总结一下: 属性写在.h文件中和在.m文件 ...

随机推荐

  1. (Problem 17)Number letter counts

    If the numbers 1 to 5 are written out in words: one, two, three, four, five, then there are 3 + 3 + ...

  2. 17.1.1.3 Creating a User for Replication

    17.1.1.3 Creating a User for Replication 创建一个用户用于复制: 每个slave 连接到master 使用一个MySQL 用户名和密码, 因此必须有一个user ...

  3. CMake初步(2)

    转自:<你所不知的OSG>第一章:CMake初步(2) http://bbs.osgchina.org/forum.php?mod=viewthread&tid=1229& ...

  4. 评侯捷的<深入浅出MFC>和李久进的<MFC深入浅出>

    侯捷的<深入浅出mfc>相信大家都已经很熟悉了,论坛上也有很多介绍,这里我就不多说了. 而李久进的<mfc深入浅出>,听说的人可能就少得多.原因听说是这本书当时没有怎么宣传,而 ...

  5. Spring连接MySQL、Oracle和SQL Server

    其中applicationContext.xml的配置如下: <?xml version="1.0" encoding="UTF-8"?> < ...

  6. Hadoop之——又一次格式化hdfs系统的方法

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46352939 又一次格式化hdfs系统的方法: (1)查看hdfs-ste.xml ...

  7. Excel VBA ——批量工作表重命名

    虽然平常在用excel 2010重命名工作表的时候,一般可能会用"双击工作表"的方法来重名,但是遇到大批量重名的时候就很麻烦. 我的方法,先建一张新表,然后在第一列写好要命名的表名 ...

  8. Linux fstab 参数详解

    [root@qs-wg-db1 /]# cat /etc/fstab LABEL=/          /                       ext3    defaults         ...

  9. Jquery学习笔记:操作form表单元素之二(复选框和单选框)

    在上面文章的基础上,我们介绍如何操作表单元素中的 复选框和单选框. 一.复选框 <label> <input type="checkbox" id="i ...

  10. Android常用秘籍总结

    一.无法向模拟器push文件,显示read-only file system $adb shell mount -o remount rw/ 确保模拟器有sd卡 二.Android模拟按键 #adb ...