c++ - size_t 是字长吗?

标签 c++ c size-t

size_t 是编译代码的机器的字长吗?

使用 g++ 解析,我的编译器将 size_t 视为 long unsigned int。编译器是否在内部选择 size_t 的大小,或者 size_t 实际上是在 stddef.h 中的某个预处理器宏中将其键入定义为字长在编译器被调用之前?

还是我偏离了轨道?

最佳答案

在 C++ 标准中,[support.types] (18.2)/6:“类型 size_t 是实现定义的无符号整数类型,它大到足以包含任何字节的大小对象。”

这可能与“字长”相同,也可能不同,不管是什么意思。

关于c++ - size_t 是字长吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14792068/

相关文章:

c++ - mex 编译器中的 "-DranSHR3"选项是什么

c - 为什么 unsigned int 而不是 strlcat 和 strlcpy 的 void?

c++ - 将链表的大小从 '__int64' 截断为 'size_t

C size_t 和 ssize_t 负值

c++ - catch单元测试框架支持junit风格的测试报告吗?

c++ - 嵌套类 C++ 中的可访问性和可见性

使用 Curses 在 C 程序中创建一个盒子

c - 指针在 C 函数中的工作原理 - 无需强制转换的指向整数的指针

c - scanf 和 printf size_t 变量的正确方法(平台无关)

c++ - c/c++ 中的引号和 argv