why this program output 4
#define SIZE 10
void size(int arr[SIZE])
{
   printf("size of array is:%d\n",sizeof(arr));
}
 int main()
{
      int arr[SIZE];
      size(arr);
      return 0;
}
what hanppen when  call size(arr) in main function, does mean that assign the address arr in the main function to arr[SIZE] in the size function? 
can someone interpret this?
 
     
    