I was reading some info on externs. Now the author started mentioning variable declaration and definition. By declaration he referred to case when: if a variable is declared the space for it is not allocated. Now this brought me to confusion, because I think MOST of the times when I use variables in C, I am actually both defining and declaring them right? i.e.,
int x; // definition + declaration(at least the space gets allocated for it)
I think then that only cases in C when you declare the variable but not define it is when you use:
extern int x; // only declaration, no space allocated
did I get it right?