C Quiz – 109 | Question 3

Find out the correct statement for the following program.

filter_none

edit
close

play_arrow

link
brightness_4
code

#include "stdio.h"
  
typedef int (*funPtr)(int);
  
int inc(int a)
{
 printf("Inside inc() %d\n",a);
 return (a+1);
}
  
int main()
{
  
 funPtr incPtr1 = NULL, incPtr2 = NULL;
  
 incPtr1 = &inc; /* (1) */
 incPtr2 = inc; /* (2) */
  
 (*incPtr1)(5); /* (3) */
 incPtr2(5); /* (4)*/
  
 return 0;
}

chevron_right


(A) Line with comment (1) will give compile error.
(B) Line with comment (2) will give compile error.
(C) Lines with (1) & (3) will give compile error.
(D) Lines with (2) & (4) will give compile error.
(E) No compile error and program will run without any issue.


Answer: (E)

Explanation: While assigning any function to function pointer, & is optional. Same way, while calling a function via function pointer, * is optional.

Quiz of this Question



My Personal Notes arrow_drop_up


Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.