程序框架:
#include <stdio.h>
int main(int argc, char **argv) {
return 0;
}
void main()表示主函数没有返回值,可以不加return,有一些编译器是认可这种写法的,但是所有的标准都不认可这样的写法,有的编译器void main()可以通过编译,但在其他编译器就会报错,所以最好不要这样写。在void main()下return语句返回一个值的话会报错,如果就只是一个return;表示程序结束不继续往下执行。
int main()表示主函数返回值为整型,可加return 0;返回一个值看是否为0来判断程序是否正常退出(返回值 整型是有取值范围的 尝试了过大会导致程序报错)。这种写法在C 90标准中被勉强接受,但是C 99和C 11标准并不允许这样写。它们仍然可以被正常编译使用的原因是我们的编译器允许这样写。但是书中明确指出,为了使我们的程序有良好的移植性,最好使用以下更为标准的写法。
在main函数中,return语句的作用在于离开main函数。尝试不加return 0 也可正常运行(但这是不太好的写法) ,了解到是编译器为我们校正默认添加了return 0 放在别的地方可能会出错。有的编译器必须main要有返回值 int ,那就写成int main 后面加return。
int main(void)是更为标准的写法。