Hi,

why does the function return an incorrect value, here 2 instead of 5?

Code:
#include <stdio.h>

size_t len(const short (*arr))
{
	return sizeof(arr)/sizeof(arr[0]);
}

int main(void)
{
	const short *data[5] = {14, 15, 16, 17, 18};
	printf("%d\n", len(data));
	
	return 0;
}