thanx i got it :) On Sat, Jul 2, 2011 at 1:57 PM, santosh mahto <santoshbit2...@gmail.com>wrote:
> this will help > > ->sizeof operator only need declaration not definition.since sizeof > operator calculates size at > compile time. > At compile time code doesnot seek for definition.it only need > declaration.if any variable is declared with extern,it thinks that > its definition will be found at linking time. > > In ur question: > 1 case. when a =20 is done compiler see that its value is declared.so its > OK .but at link time since def of a is not found > so linker error. since linker tries to find the actual memory address where > the def of a is. > > see after compilation the symbol table for a will be as > > symbolname| memory location| value > a |find later(garbage)| 20 > > so there is no problem with compiler .but at link time garbage value need > to be filled with actual memory address > since def is not there so linker error. > > case2. there will be noentry in the symbol table for a. as code doesnot > include any defintion related operation. > > > iF anything helps you, dont forget to say thanks > > Thanks > Santosh > > > > > > On Sun, Jul 3, 2011 at 1:38 AM, HARSH PAHUJA <hpahuja.mn...@gmail.com>wrote: > >> will ny1 xplain this extern concept.... >> y this is a linker error? >> >> >> On Sat, Jul 2, 2011 at 12:49 PM, HARSH PAHUJA <hpahuja.mn...@gmail.com>wrote: >> >>> @piyush plz explain how are u getting this...... >>> >>> >>> On Sat, Jul 2, 2011 at 12:10 PM, Piyush Sinha >>> <ecstasy.piy...@gmail.com>wrote: >>> >>>> i) [Linker error] undefined reference to `a' >>>> >>>> ii) 4 >>>> >>>> On 7/3/11, HARSH PAHUJA <hpahuja.mn...@gmail.com> wrote: >>>> > 1) >>>> > #include<stdio.h> >>>> > int main() >>>> > { >>>> > extern int a; >>>> > a=20; >>>> > printf("%d",sizeof(a)); >>>> > return 0; >>>> > } >>>> > >>>> > 2) >>>> > #include<stdio.h> >>>> > int main() >>>> > { >>>> > extern int a; >>>> > printf("%d",sizeof(a)); >>>> > return 0; >>>> > } >>>> > >>>> > >>>> > >>>> > -- >>>> > HARSHIT PAHUJA >>>> > M.N.N.I.T. >>>> > ALLAHABAD >>>> > >>>> > -- >>>> > You received this message because you are subscribed to the Google >>>> Groups >>>> > "Algorithm Geeks" group. >>>> > To post to this group, send email to algogeeks@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. >>>> > >>>> > >>>> >>>> >>>> -- >>>> *Piyush Sinha* >>>> *IIIT, Allahabad* >>>> *+91-8792136657* >>>> *+91-7483122727* >>>> *https://www.facebook.com/profile.php?id=100000655377926 * >>>> >>>> -- >>>> You received this message because you are subscribed to the Google >>>> Groups "Algorithm Geeks" group. >>>> To post to this group, send email to algogeeks@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. >>>> >>>> >>> >>> >>> -- >>> HARSHIT PAHUJA >>> M.N.N.I.T. >>> ALLAHABAD >>> >>> >>> >> >> >> -- >> HARSHIT PAHUJA >> M.N.N.I.T. >> ALLAHABAD >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Algorithm Geeks" group. >> To post to this group, send email to algogeeks@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. >> > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algogeeks@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. > -- HARSHIT PAHUJA M.N.N.I.T. ALLAHABAD -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@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.