extern - Variables described by extern statements will not have any space allocated for them, as they should be properly defined elsewhere.

static - The static data type modifier is used to create permanent storage for variables. Static variables keep their value between function calls. When used in a class, all instantiations of that class share one copy of the variable.

const - The const keyword can be used to tell the compiler that a certain variable should not be modified once it has been initialized.

More C definition here