No. There?s no way to tell, at runtime, how many elements are in an array parameter just by looking at the array parameter itself. Remember, passing an array to a function is exactly the same as passing a pointer to the first element.
YES.You can tell how large the array is. However, you cannot determine how many elements have been copied into it so far.
EX: Take for instance the following code.
int testList[5]; int sizeofList = sizeof(testList); printf("sizeof list = %d", sizeofList);
The output will be: "sizeof list = 20" Meaning that 4(int) * 5 = 20.