1.  A pointer is

A. A keyword used to create variables
B. A variable that stores address of an instruction
C. A variable that stores address of other variable
D. All of the above

Answer: Option C

Explanation:

Normal variable means it stores the values directly. But if you want to change those values without touching those variables we are using pointers.

Pointer is a one type of variable it holds the address of the variable.

int a=5; // suppose a variable address is 100
int *p;

p=&a;// here p(pointer variable)holdes the address of the a variable.

The answer can be summarized as follows...

[A] A keyword used to create variables -> Wrong. A pointer is NOT a keyword.

[B]. A variable that stores address of an instruction -> Wrong. Though a pointer may hold the address of an instruction (i.e. function pointer), it is no required to

[C]. A variable that stores address of other variable -> Correct. A pointer is a variable that stores the address of any other variable be it a value or another address.

[D]. All of the above -> Wrong as A and B are incorrect.