C Programming - Declarations and Initializations

6.
1 : typedef long a;
extern int a c;
2 : typedef long a;
extern a int c;
3 : typedef long a;
extern a c;
1 correct
2 correct
3 correct
1, 2, 3 are correct
Answer: Option
Explanation:

typedef long a;
extern int a c;
while compiling this statement becomes extern int long c;. This will result in to "Declaration syntax error".

typedef long a;
extern a int c;
while compiling this statement becomes extern long int c;. This will result in to "Too many types in declaration error".

typedef long a;
extern a c;
while compiling this statement becomes extern long c;. This is a valid c declaration statement. It says variable c is long data type and defined in some other file or module.

So, Option C is the correct answer.