K&R says:
by default external variables and functions have the property that all references to them by the same name, even from functions compiled
external variables and functions are global, i.e. hold the same values (for variables) or definitions (for functions) even when called from different *.c files within your program.