sizeof获取数组长度的问题
发现好像在函数模板中使用sizeof和在main函数中使用sizeof会得出不一样的值本人初学者,对这个情况是在理解不透,望各位前辈赐教
template <class T>
T arrlen(T array[])
{
int length =(sizeof(array) / sizeof(array[0]));
cout << length << endl;
}
先是写了一个函数模板
但在main函数中
int Int[] = {1,4,5,7,2,1,3,9,34}; //有9个元素的整型数组
int length = sizeof(Int) / sizeof(Int[0]);
此时 length = 9
而我在main函数中套用了arrlen函数时
arrlen(Int);
输出却是2
恳请各位前辈帮助