cstdint

    1热度

    1回答

    我正在实现C代码来将16位符号和幅度整数复制到8位符号和幅度整数。这甚至有可能吗?有人可以解释如何做到这一点? 代码片段: int16_t a = 0x1234; int8_t b, c; 如何前两位复制到变量b和接下来的两个数字到变量c?

    4热度

    1回答

    我只是偶然发现类型u_int8_t,因为它没有编译在Windows + MinGW(但在Linux下编译好)。根据this site C++ 11标准定义了uint8_t的类型。我只是使用后者,一切正常。 是arised的问题是: 有u_int8_t和uint8_t之间有什么区别? 使用u_int8_t是否有原因(除了遗留代码)? 如果我使用C++ 11编译器(在不同的操作系统或体系结构上),假设

    3热度

    1回答

    今天我试图在cstdint头文件中定义某些类型没有提供一个适当的警告: std::uint16_t,std::uint_least16_t等.. 我认为它们非常有用,因为您知道的确切或至少有多大,不像更常见的平台特定的:int,unsigned int等等。 但是有一个问题,我认为会导致很多错误。 比方说,我们有这样的代码: #include <cstdint> #include <iostre

    1热度

    1回答

    我正在尝试在命令上创建几个项目,但是我一直无法找到<cstdint>。该项目试图建立一个当它到达的包括路径的具体线路,特别是#include <cstdint>它抛出一个错误 fatal error: 'cstdint' file not found. 这是令人费解,因为这个文件是在我家的路,它看起来像,但它不能被发现。我真的不太了解编译器和路径,所以请原谅我的无知。 关于我的电脑和我试图运行

    5热度

    2回答

    为什么C++没有< cstdfloat>头像浮点数,就像它有整数的< cstdint>? 编辑: 通过< cstdfloat>我的意思报头提供用于浮点和双精度的typedef。很像Qt中的qreal typedef。希望我的问题现在已经清楚。

    2热度

    5回答

    背景: 我有模板流运营商(例如operator << (ostream &, std::vector <T>))(即输出容器元素可能是某个8位的整数的型,(例如unsigned char,int_least8_t,等等) 问题: 默认的是,这些类型如下char(ASCII)输出 我只用char(或。或其他)的ASCII变量,从来没有无符号/签名类型。 即使调用者不知道类型,我如何才能将这些其他8位

    48热度

    8回答

    我试图编译写于2007年的C++软件包,我得到这个错误: error: ‘uint32_t’ does not name a type 这是发生在64位Ubuntu使用g ++ 4.5.2。它使用g ++ 4.1.2在64位CentOS上编译得很好。 是否有#include或我缺少的编译器标志?或者,我是否应该使用typedef将uint32_t分配给size_t或者unsigned int?

    5热度

    4回答

    Boost的C99 stdint实现非常方便。但有一件事让我感到不安。他们将所有的typedefs转储到boost namespace。使用此工具时,这给我留下了三个选项: 使用“using namespace boost” 使用“using boost::[u]<type><width>_t” 明确提及与boost::前缀的目标类型;例如,boost::uint32_t foo = 0; 选项№

    60热度

    3回答

    stdint.h和cstdint有什么区别? 它们都在MSVC(Visual Studio 2010)和gcc-4.5.1中可用。也都定义了intX_t/uintX_t类型(其中X是该类型的字节大小)。 如果两个头文件中的基本原理是相同的(便携式类型),那么我必须做出什么决定来决定哪一个呢? 的stdint.h定义了每个类型没有任何名称空间中,cstdint类型在于std命名空间。 是否有任何理由