📜  如何在 C++ 中查找 int 数组的大小(1)

📅  最后修改于: 2023-12-03 15:08:35.079000             🧑  作者: Mango

如何在 C++ 中查找 int 数组的大小

在 C++ 中,如果要查找一个 int 数组的大小,可以使用以下几种方法:

方法一 - 使用 sizeof 操作符

使用 sizeof 操作符可以查找 int 数组的大小。例如:

int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);

上述代码中,使用 sizeof(arr) 获取整个数组的大小,再除以 sizeof(arr[0]) 获取单个元素的字节数,从而得到 int 数组的大小。

方法二 - 使用 std::size 函数

C++17 中新增了一个标准库函数 std::size,可以用于获取数组的大小。例如:

int arr[] = {1, 2, 3, 4, 5};
int size = std::size(arr);
方法三 - 使用模板推导

可以使用模板推导的方式获取数组的大小。例如:

template <typename T, size_t N>
size_t getArraySize(T (&)[N])
{
    return N;
}

int arr[] = {1, 2, 3, 4, 5};
int size = getArraySize(arr);

上述代码中,定义了一个模板函数 getArraySize,使用模板参数推导的方式获取数组的大小。

总结:

以上是在 C++ 中查找 int 数组大小的三种方法,可以根据实际情况进行选择。其中,使用 sizeof 操作符需要注意,如果将数组传递给函数,使用 sizeof 可能不起作用,这时可以考虑使用模板推导的方式获取数组大小。