extern is an access-specifier in C and C++ which defines a global variable that is visible to all object modules.
The extern
keyword means "declare without defining". In other words, it is a way to explicitly declare a variable, or to force a declaration without a definition. The extern
declaration in C/C++ is to indicate the existence of, and the type of, a global variable or function. A global variable, or a global function, is one that is available to all C/C++ modules. An extern
is something that is defined externally to the current module.
(source)