What does the following declaration mean in C?

int **get_pointer(void);
                        

Options

  • A. A function returning an int
  • B. A pointer to a function returning int
  • C. A function returning a pointer to a pointer to int
  • D. More than one of the above
  • E. None of the above

Correct Answer (Detailed Explanation is Below)

C. A function returning a pointer to a pointer to int

Detailed Explanation

Correct Answer: Option C

Explanation:
The function name is get_pointer. The void parameter list means it takes no arguments in this declaration. The return type int ** means it returns a pointer to a pointer to int. It is not a function pointer declaration.