gcc - Using a function in differents C files -


i have prototype of function header.h defined :

void getsettings(); 

i'm using function in 1st source file file1.c :

void getsetting(){     printf(" in file 1 \n"); } 

this works. have second source file has use function, different implementation file2.c :

void getsetting() {     printf(" in file 2 \n"); } 

the program crashes when start 2nd file, delivering segmentation fault (core dumped) error message. , doesn't implementation of second file. idea if i'm trying possible in c, if yes how ?

update compile code use :

gcc file2.c -o o2  

and first file

gcc file1.c -o o1 

yes, can must declare function static in header , in both files.

also, please not leave empty arguments in functions, instead use void, otherwise indicating function may variadic.

so want:

static void getsettings(void); 

and

static void getsettings(void) {     printf(" in file 1 \n"); } 

and

static void getsettings(void) {     printf(" in file 2 \n"); } 

also note, @invalid pointed out, may not want include prototype in header file function of file scope not need prototyped in header , may not need prototyped @ if defined before used.


Comments

Popular posts from this blog

javascript - Jquery show_hide, what to add in order to make the page scroll to the bottom of the hidden field once button is clicked -

javascript - Highcharts multi-color line -

javascript - Enter key does not work in search box -