adplus-dvertising
frame-decoration

Question

What is the output of this C code?
#include <stdio.h>
    void f(int);
    void (*foo)() = f;
    int main(int argc, char *argv[])
    {
        foo(10);
        return 0;
    }
    void f(int i)
    {
        printf("%d\n", i);
    }

a.

Compile time error

b.

10

c.

Undefined behaviour

d.

None of the mentioned

Answer: (b).10

Engage with the Community - Add Your Comment

Confused About the Answer? Ask for Details Here.

Know the Explanation? Add it Here.

Q. What is the output of this C code? #include <stdio.h> void f(int); void (*foo)() = f; int main(int argc, char *argv[]) { foo(10);...

Similar Questions

Discover Related MCQs

Q. What does this declaration say?
int (*(*y)())[2];

Q. Read the following expression?
void (*ptr)(int);

Q. Which of the following expression is true for the following?

ptr is array with 3 elements of pointer to function returning pointer of int

Q. What do the following declaration denote?
int **ptr;

Q. What do the following declaration denote?
char *str[5];

Q. Comment on the following declaration?

int (*ptr)(); // i)
char *ptr[]; // ii)

Q. Is the below declaration legal?
int* ((*x)())[2];

Q. Let x be an array. Which of the following operations are illegal?

Q. What is the maximum number of dimensions an array in C may have?

Q. What does the following declaration mean?
int (*ptr)[10];

Q. Which of the following statements are correct about an array?

1. The array int num[26]; can store 26 elements.
2. The expression num[1] designates the very first element in the array.
3. It is necessary to initialize the array at the time of declaration.
4. The declaration num[SIZE] is allowed if SIZE is a macro.

Q. int a[5] = {1,2,3}

What is the value of a[4]?

Q. The function sprintf() works like printf(), but operates on ..........

Q. Choose the best answer.
Prior to using a pointer variable

Q. The address operator &, cannot act on

Q. The statement int **a;

Q. The operator > and < are meaningful when used with pointers, if

Q. The declaration
int (*p) [5];
means

Q. Comment on the following?
const int *ptr;

Q. A function 'p' that accepts a pointer to a character as argument and returns a pointer to an array of integer can be declared as