方法一:
#include <stdio.h>
int main(int argc, char *argv[])
{
int iTotalElement = 0 ;
int aiData[] = {10, 20, 30, 40, 50, 60};
//Calculate numbers of elements using pointer arithmatic
iTotalElement = *(&aiData + 1) - aiData;
printf("Number of element = %d",iTotalElement);
return 0;
}
输出结果如下:
Number of element = 6
方法二
#include <stdio.h>
// User created size of operator
#define SIZEOF(Var) ((char*)(&Var + 1) -(char*)&Var)
int main(int argc, char *argv[])
{
int iTotalElement = 0 ;
int aiData[] = {10, 20, 30, 40, 50, 60};
iTotalElement = SIZEOF(aiData)/SIZEOF(aiData[0]);
printf("Number of element = %d",iTotalElement);
return 0;
}
输出结果如下:
Number of element = 6