In all the code I see online, programs are always broken up into many smaller files. For all of my projects for school though, I\'ve gotten by by just having one gigantic C sour
Just to give you an idea.
create a file called print.c, put this inside:
#include
#include
#include
void print_on_stdout(const char *msg) {
if (msg) fprintf(stdout, "%s\n", msg);
}
void print_on_stderr(const char *msg) {
if (msg) fprintf(stderr, "%s\n", msg);
}
create a file called print.h, put this inside:
void print_on_stdout(const char *msg);
void print_on_stderr(const char *msg);
create a file called main.c, put this inside:
#include
#include
#include
#include "print.h"
int main() {
print_on_stdout("test on stdout");
print_on_stderr("test on stderr");
return 0;
}
Now, for each C file, compile with:
gcc -Wall -O2 -o print.o -c print.c
gcc -Wall -O2 -o main.o -c main.c
Then link compiled files to generate an executable:
gcc -Wall -O2 -o test print.o main.o
Run ./test and enjoy.