extern int a;
means the 'a' was defined in some other files .