我对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
有人可以解释这种结构意味着什么吗?
答案 0 :(得分:0)
那些看起来像C ++类型(Boost的库cstdint的一部分)。你在什么情况下看到这些类型?你在使用Boost库吗?
编辑:我猜't'代表'type'或'typedef'。
答案 1 :(得分:0)
没有内置类型,例如Int32_t
和Int64_t
,并且没有可以添加到现有类型的魔术后缀_t
。
必须在代码中的某处定义Int32_t
和Int64_t
类型。他们可能以某种方式使用Int32
和Int64
类型,但由于类型名称包含其他类型名称,因此没有任何魔法。就编译器而言,它们也可以命名为ABigNumber
和ABiggerNumber
。