We can either tell the compiler to use the C language standard C90 (ANSI), which was modern when the book was written. Do it by using parameter -std=c90
or -ansi
to the compiler, like this:
$ cc -ansi t.c -o t.out
or you can rewrite the program to adhere to a newer standard (C99), which is what your compiler uses by default, by adding a return type to the main
function, like this:
int main()
{
……
return 0;
}
Give main a int return type. and make sure to add return 0;
as the last statement. It solves the problem.
note
- ANSI is American National Standards Institute.
- t.out is an executable file. run
$ ./t.out
it will print expected result. If we do not want to type "./", then add "." to our PATH.
references
1. https://stackoverflow.com/questions/43819099/how-to-not-invoke-warning-type-specifier-missing