std::size_t
STD:大小[医]T型
Defined in header | | |
---|---|---|
Defined in header <cstdio> | | |
Defined in header <cstdlib> | | |
Defined in header <cstring> | | |
Defined in header <ctime> | | |
Defined in header <cwchar> | | |
typedef /*implementation-defined*/ size_t; | | |
std::size_t
的结果的无符号整数类型。sizeof
运算符以及sizeof...
运算符和alignof
运算符%28自C++11%29。
注记
std::size_t
可以存储任何类型%28(包括数组%29)的理论上可能的对象的最大大小。大小不能由std::size_t
自C++14%29在许多平台上运行以来,是否存在格式错误的%28?一个例外是具有分段寻址%29的系统。std::size_t
可以安全地存储任何非成员指针的值,在这种情况下,它是std::uintptr_t
...
std::size_t
通常用于数组索引和循环计数。使用其他类型的程序,例如unsigned int
,因为数组索引可能会失败,例如,当索引超过64位系统时。UINT_MAX
或者它是否依赖于32位模块运算。
当索引C++容器时,例如std::string
,,,std::vector
,等,适当的类型是成员类型size_type
由该等货柜提供。它通常被定义为std::size_t
...
例
二次
#include <cstddef>
#include <iostream>
int main()
{
const std::size_t N = 10;
int* a = new int[N];
for (std::size_t n = 0; n < N; ++n)
a[n] = n;
for (std::size_t n = N; n-- > 0;) // Reverse cycles are tricky for unsigned types.
std::cout << a[n] << " ";
delete[] a;
}
二次
产出:
二次
9 8 7 6 5 4 3 2 1 0
二次
另见
ptrdiff_t | signed integer type returned when subtracting two pointers (typedef) |
---|---|
offsetof | byte offset from the beginning of a standard-layout type to specified member (function macro) |
c尺寸文件[医]T型
© cppreference.com
在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。