方法1:
#include <iostream>
using namespace std;
int getlength(int (&arr)[10])
{
int n=sizeof(arr)/sizeof(int);
return n;
}
void main()
{
int array[10];
int n=getlength(array);
cout << n << endl;
}
方法2:
#include <iostream>
using namespace std;
struct st
{ int array[10];
};
int getlength(st& s)
{
int n=sizeof(s.array)/sizeof(int);
return n;
}
void main()
{
st s;
int n=getlength(s);
cout << n << endl;
}
方法3:
#include <iostream> #include <malloc.h>
using namespace std;
int getlength(int* p) { int n = _msize(p)/sizeof(int) ;
return n;
}
void main()
{
int* array = new int[10];
int n=getlength(array);
delete[] array;
cout << n << endl;
}