Home »
C programs »
C common errors programs
Error: Id returned 1 exit status (undefined reference to 'main')
Here, we are going to learn why an Error: Id returned 1 exit status (undefined reference to 'main') occurs and how to fixed in C programming language?
By IncludeHelp Last updated : March 10, 2024
As we know that,
- Each program must have a main() function, compiler starts execution from the main() function - main() is an entry point to the program,
- And, the second this "C language is a case-sensitive language - uppercase words, and lowercase words are different".
Error: Id returned 1 exit status (undefined reference to 'main')
This error is occurred on following cases,
- If main() is not written in lowercase, like you used Main(), MAIN(), mAin() or anything else.
- If main() does not exist in the program or by mistake you mistyped the main().
Consider the programs...
Example 1: 'main()' is not in lowercase
#include <stdio.h>
int Main(void) {
printf("Hello world!");
return 0;
}
Output
/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: error: ld returned 1 exit status
Example 2: Mistyped 'main()' as 'nain()' or anything else
#include <stdio.h>
int nain(void) {
printf("Hello world!");
return 0;
}
Output
/usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/Scrt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
collect2: error: ld returned 1 exit status
How to fix?
To fix this error - use correct syntax of main() i.e. use main(), type correct spelling in lowercase
Correct Code
#include <stdio.h>
int main(void) {
printf("Hello world!");
return 0;
}
Output
Hello world!
C Common Errors Programs »