In the following program, I thought that extern int i; will change the following i to refer to the i defined outside main
extern int i;
i
main
#include int i=1; // external variable int main() { int i=2; // local variable printf("%d\n", i); // print local variable i==2 { extern int i; // point to external variable printf("%d\n", i); // print external variable i==1 } return 0; }