为什么 C 语言中 main 函数 需要有一个返回值

概念:

C89 中,main( ) 是可以接受的的经典巨著(C程序设计语言第二版)用的就是main( )不过在最新的C99 标准中,只有以下两种定义方式是正确的:

int main( void )

int main( int argc, char *argv[] )

如果不需要从命令行中获取参数,请用int main(void)

否则请用int main( int argc, char *argv[] )

main函数的返回值类型必须是int,这样返回值才能传递给程序的调用者(如操作系统)

如果main函数的最后没有写return语句的话,C99规定编译器要自动在生成的目标文件中(如exe文件)加入return 0;,表示程序正常退出不过,

我还是建议大家最好在main函数的最后加上return语句,虽然没有这个必要,但这是一个好的习惯注意,

vc6不会在目标文件中加入return 0, 大概是因为vc6是98年的产品,所以才不支持这个特性现在明白我为什么建议你最好加上return语句了吧!

  

示例:

推荐:
#include <stdio.h>

int main () {
  printf("hello world");
  return 0;
}

不推荐:
#include <stdio.h>

int main () {
  printf("hello world");
}

不可用
void main () {
  printf("hello world");
  return 0;
}

不可用
void main () {
  printf("hello world");
}

  

原文地址:https://www.cnblogs.com/gqx-html/p/15036298.html