-3

我对 C/C++ 中变量的类型有一个简单的问题,即可以声明这样的类型

int32_t、int64_t 等

我的问题是这些类型中的“t”是什么意思,与通常的类型(如 int32、int64)有什么区别。

谢谢!

...

抱歉,我不知道如何正确回答所有回答我问题的人,而不是单独写评论。无论如何,感谢大家的回复。好吧,我不得不说我正在解析代码,而且我是 C/C++(不是 C#)的新手

关于 int32_t 等,它们似乎确实在头文件中单独定义:

#include <stdint.h>
#ifdef _FAST_
#define SHORT  uint_fast16_t
#define INT    uint_fast32_t
#define LONG   uint_fast64_t
#else
#define SHORT  uint16_t
#define INT    uint32_t
#define LONG   uint64_t
#endif

有人能解释一下这个结构是什么意思吗?

4

2 回答 2

0

这些看起来像 C++ 类型(Boost 库 cstdint 的一部分)。您在什么情况下看到这些类型?你在使用 Boost 库吗?

编辑:我猜“t”代表“type”或“typedef”。

于 2012-10-24T10:34:50.847 回答
0

Int32_t没有像and这样的内置类型Int64_t,也没有_t可以添加到现有类型的魔法后缀。

类型Int32_tInt64_t必须在代码中的某处定义。他们可能以某种方式使用Int32andInt64类型,但并没有因为类型名称包含其他类型名称而涉及魔法。就编译器而言,ABigNumber它们也可以被命名。ABiggerNumber

于 2012-10-24T10:35:25.827 回答