c语言中的问题,希望有人能够解答!


int test()
{
  static int a = 1;
  a++;
  printf("%d\n",a);
  return 0;
} 
int main()
{
  int b = 0;
  while(b<5)
  {  test();
  b++;
  }
  return 0;
}

当把自定义函数上面的int 改成 void,然后删掉return 0; 结果是一样的,请问这两个有什么区别吗

相当于系统调用了main函数,如果你写的int main系统就会拿到一个return的0,如果是void main系统就拿不到,但也知道main跑完了或者出错了
其实没什么区别,你可以写多种情况下的不同return来用main里面的这个return
有帮助望采纳

如果是自定义函数是void类型,就说明没有返回任何值给调用它的函数,如果自定义函数是int 类型,就可以给调用它的函数返回一个整型值,具体返回什么,具体分析,可以在主函数中通过printf函数打印出这个值查看

如果你的编译器是Devc++的话,main函数一定要用int作为返回值类型
VS可以用任意类型
其实,用int和void作为main函数的返回值是一样的