how do I get the length (or size) of a dynamic array? tried this but I get 0
Code:
#include <stdio.h>
#include <stdlib.h>
typedef struct a
{
int age;
char name[10];
} el;
int main (int argc, const char * argv[])
{
int i,n;
el *array;
int d;
printf("length :> ");
scanf("%d",&n);
array = (el *) calloc (n,sizeof(el));
printf("\nINPUT\n\n");
for (i=0; i<n; i++)
{
printf("name %d. el :> ",i);
scanf("%s", array[i]. name);
printf("age %d. el :> ",i);
scanf("%d",& array[i]. age);
}
printf("\nPRINTOUT\n\n");
for (i=0; i<n; i++)
{
printf("%d. el :> NAME:\t%s\tAGE:\t%d\n",i, array[i]. name, array[i]. age);
}
d = sizeof(array)/sizeof(el);
printf("Length is :> %d",d);
return 0;
}