Functions - Programming

Q1:

Point out the error in the program
#include<stdio.h>

int main()
{
    int a=10;
    void f();
    a = f();
    printf("%d\n", a);
    return 0;
}
void f()
{
    printf("Hi");
}

A Error: Not allowed assignment

B Error: Doesn't print anything

C No error

D None of above

ANS:A - Error: Not allowed assignment

The function void f() is not visible to the compiler while going through main() function. So we have to declare this prototype void f(); before to main() function. This kind of error will not occur in modern compilers.