Which compiler are you using ? Are you compiling both the files together ? *Neeraj Gangwar* B.Tech. IV Year Electronics and Communication IDD Indian Institute of Technology Roorkee Contact No. : +91 9897073730
On Thu, Nov 15, 2012 at 9:10 PM, rahul sharma <[email protected]>wrote: > but how can i use extern..if i simply declare a variable in file1 as int j > and try to use in file2 with extern then it shows that j nit defined..how > cum file2 knows in which file j is defined....for e.g if i use extern in > file it means that this variable/fxn is defined somewhr else.then what are > those files in which it searches this variable definition..i m getting > error....plese give me 2 files in which one files defines variable and > other uses using extern.....its not working for me.... > > On Thu, Nov 15, 2012 at 12:08 PM, Rahul Kumar Dubey <[email protected]>wrote: > >> @rahul it will compile perfectly well . note that you have declared j in >> file 1 as extern and used it and have not provided its definition any where >> so getting compile error. >> as far as functions are concerned they are external by defaullt as >> specified by @shobhit >> >> i am attaching your corrected code which runs fine ... >> file1.c >> >> >> #include<stdio.h> >> extern int i; >> //extern int j; // provide a declaration for this >> void next(void); >> >> int main() >> { >> ++i; >> printf("%d\n",i); >> >> next(); >> getchar(); >> } >> int i=3; >> void next() >> { >> ++i; >> printf("%d\n",i); >> //printf("%d",j); // since no defintion provided so getting error >> other(); >> } >> >> file2.c >> >> >> extern int i; >> void other() >> { >> ++i; >> printf("%d\n",i); >> } >> >> if you want to use j u need to provide defintion either in file 1 or file >> 2 >> output: >> 4 >> 5 >> 6 >> >> >> >> >> On Wed, Oct 24, 2012 at 10:56 PM, rahul sharma >> <[email protected]>wrote: >> >>> can nyone provide me dummy code of how exactly to use extern in c.. >>> in dev environment >>> >>> when i declare int i in one fyl >>> and try use use with extern int i in another then it doesnt compile..plz >>> coment >>> >>> >>> On Wed, Oct 24, 2012 at 9:58 PM, rahul sharma >>> <[email protected]>wrote: >>> >>>> Then why its not running? >>>> >>>> >>>> On Wed, Oct 24, 2012 at 6:50 PM, SHOBHIT GUPTA < >>>> [email protected]> wrote: >>>> >>>>> http://www.geeksforgeeks.org/archives/840 >>>>> >>>>> By default, the declaration and definition of a C function have >>>>> “extern” prepended with them. It means even though we don’t use extern >>>>> with >>>>> the declaration/definition of C functions, it is present there. For >>>>> example, when we write. >>>>> >>>>> int foo(int arg1, char arg2); >>>>> >>>>> There’s an extern present in the beginning which is hidden and the >>>>> compiler treats it as below. >>>>> >>>>> >>>>> extern int foo(int arg1, char arg2); >>>>> >>>>> >>>>> On Wed, Oct 24, 2012 at 4:40 PM, rahul sharma < >>>>> [email protected]> wrote: >>>>> >>>>>> Pleaase reply with sol as asp >>>>>> >>>>>> Fille 1: >>>>>> #include<stdio.h> >>>>>> extern int i; >>>>>> >>>>>> extern int j; >>>>>> void next(void); >>>>>> int main() >>>>>> { >>>>>> ++i; >>>>>> printf("%d",i); >>>>>> next(); >>>>>> getchar(); >>>>>> } >>>>>> int i=3; >>>>>> void next() >>>>>> { >>>>>> ++i; >>>>>> printf("%d",i); >>>>>> printf("%d",j); >>>>>> other(); >>>>>> } >>>>>> File 2: >>>>>> extern int i; >>>>>> >>>>>> void other() >>>>>> { >>>>>> ++i; >>>>>> printf("%d",i)' >>>>>> } >>>>>> >>>>>> How cum file 1 knows what is other();as we havnet define with >>>>>> extern void other(); >>>>>> it should be error???? >>>>>> but when i include the statemetn extern void other,then also it >>>>>> shows?? >>>>>> pls provide me o/p of this questiona nd also tell how use use >>>>>> variable of one file in other as simply writing extern in a is not >>>>>> accesing >>>>>> global a of other file.... >>>>>> >>>>>> -- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "Algorithm Geeks" group. >>>>>> To post to this group, send email to [email protected]. >>>>>> To unsubscribe from this group, send email to >>>>>> [email protected]. >>>>>> 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 [email protected]. >>>>> To unsubscribe from this group, send email to >>>>> [email protected]. >>>>> 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 [email protected]. >>> To unsubscribe from this group, send email to >>> [email protected]. >>> For more options, visit this group at >>> http://groups.google.com/group/algogeeks?hl=en. >>> >> >> >> >> -- >> *RAHUL KUMAR DUBEY* >> *BTech-3rd year * >> *Computer Science &Engineering * >> *Motilal Nehru National Institute Of Technology* >> *Allahabad[211004],UP.* >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Algorithm Geeks" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> 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 [email protected]. > To unsubscribe from this group, send email to > [email protected]. > 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 [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
