gpt4 book ai didi

c++ - C++如何获取数组的长度?

转载 作者:太空狗 更新时间:2023-10-29 20:15:18 26 4
gpt4 key购买 nike

我试图为此编写自己的函数,但我得到了错误的结果

#include <iostream>

using namespace std;

template<typename T>
int array_length(T v[]) {
return (sizeof v)/sizeof(T);
}

int main() {
int v[] = {1, 2, 3, 4};
cout << array_length(v) << endl;
return 0;
}

最佳答案

像这样:

#include <cstddef> // for size_t

template< typename T, std::size_t N >
std::size_t length( const T (&)[N] )
{
return N;
}

用法

int data[100];
std::cout << length(data) << "\n";

关于c++ - C++如何获取数组的长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13542640/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com