You can also declare static functions, which can only be referenced from within the source file. This is useful for large projects because it's like rudimentary namespaces.If something is a static global variable, it means something slightly different -- the global variable is exactly like any other module-level variable (e.g. globals) but it cannot be referenced outside the module it is declared in. So "static" means two different things in C.