C Programming - Declarations and Initializations
- Declarations and Initializations - General Questions
- Declarations and Initializations - Find Output of Program
- Declarations and Initializations - Point Out Errors
- Declarations and Initializations - Point Out Correct Statements
- Declarations and Initializations - True / False Questions
- Declarations and Initializations - Yes / No Questions
#include<stdio.h>
int main()
{
display();
return 0;
}
void display()
{
printf("IndiaBIX.com");
}
In this program the compiler will not know that the function display() exists. So, the compiler will generate "Type mismatch in redeclaration of function display()".
To over come this error, we have to add function prototype of function display().
Another way to overcome this error is to define the function display() before the int main(); function.
#include<stdio.h>
void display(); /* function prototype */
int main()
{
display();
return 0;
}
void display()
{
printf("IndiaBIX.com");
}
Output: IndiaBIX.com
Note: This problem will not occur in modern compilers (this problem occurs in TurboC but not in GCC).
#include<stdio.h>
int main()
{
void v = 0;
printf("%d", v);
return 0;
}
#include<stdio.h>
struct emp
{
char name[20];
int age;
};
int main()
{
emp int xx;
int a;
printf("%d\n", &a);
return 0;
}
There is an error in the line emp int xx;
To overcome this error, remove the int and add the struct at the begining of emp int xx;
#include<stdio.h>
struct emp
{
char name[20];
int age;
};
int main()
{
struct emp xx;
int a;
printf("%d\n", &a);
return 0;
}
typedef enum error { warning, test, exception } err;
A typedef gives a new name to an existing data type.
So err is a new name for enum error.
#include<stdio.h>
int main()
{
int (*p)() = fun;
(*p)();
return 0;
}
int fun()
{
printf("IndiaBix.com\n");
return 0;
}
The compiler will not know that the function int fun() exists. So we have to define the function prototype of int fun();
To overcome this error, see the below program
#include<stdio.h>
int fun(); /* function prototype */
int main()
{
int (*p)() = fun;
(*p)();
return 0;
}
int fun()
{
printf("IndiaBix.com\n");
return 0;
}