📅  最后修改于: 2023-12-03 15:08:35.079000             🧑  作者: Mango
在 C++ 中,如果要查找一个 int 数组的大小,可以使用以下几种方法:
使用 sizeof 操作符可以查找 int 数组的大小。例如:
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
上述代码中,使用 sizeof(arr) 获取整个数组的大小,再除以 sizeof(arr[0]) 获取单个元素的字节数,从而得到 int 数组的大小。
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 可能不起作用,这时可以考虑使用模板推导的方式获取数组大小。