array is passed a pointer in the function, hence sizeof(arr)==sizeof(*arr) On Fri, Jul 23, 2010 at 9:10 PM, tarak mehta <tarakmeht...@gmail.com> wrote:
> int arr[]={1,2,3,4}; > k=sizeof(arr)/sizeof(*arr); > value of k=4; > > however > > > void hell(int arr[]); > main() > { > int arr[]={1,2,3,4}; > hell(arr); > } > void hell(int arr[]) > { > printf("%d",sizeof(arr)/sizeof(*arr)); > } > > > output of hell() is 1. why??? > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algoge...@googlegroups.com. > To unsubscribe from this group, send email to > algogeeks+unsubscr...@googlegroups.com<algogeeks%2bunsubscr...@googlegroups.com> > . > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algoge...@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.