Ключевое слово extern сообщает компилятору, что переменная объявлена в другом источнике (т.е. вне текущей области). Затем компоновщик находит это фактическое объявление и устанавливает переменную extern для указания правильного местоположения.
Переменные
, объявленные операторами extern , не будут выделять для них место, так как они должны быть правильно определены в другом месте. Если переменная объявлена extern , и компоновщик не находит ее фактического объявления, он покажет ошибку.
Например. extern int i;
// это объявляет, что есть переменная с именем i типа int, определенная где-то в программе.