Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/132.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ c/c+;中main()的默认返回类型+;_C++_C_Types - Fatal编程技术网

C++ c/c+;中main()的默认返回类型+;

C++ c/c+;中main()的默认返回类型+;,c++,c,types,C++,C,Types,为什么char/float/double(其他基本数据类型)不是main()的返回类型?,因为这就是语言的设计方式 从历史上看(即在ISO/IEC 9899制定之前),不存在void。具有您不关心的返回值的函数在声明时没有返回类型,这使得返回类型隐式地int。当时,实际上返回什么并不重要,调用main()的代码如下所示: setup_stuff(); main(argc, argv); exit(0); 当main()返回时,程序以退出状态0结束。想要返回非零退出状态的程序必须显式调用exit

为什么char/float/double(其他基本数据类型)不是main()的返回类型?

,因为这就是语言的设计方式

从历史上看(即在ISO/IEC 9899制定之前),不存在
void
。具有您不关心的返回值的函数在声明时没有返回类型,这使得返回类型隐式地
int
。当时,实际上返回什么并不重要,调用
main()
的代码如下所示:

setup_stuff();
main(argc, argv);
exit(0);
main()
返回时,程序以退出状态0结束。想要返回非零退出状态的程序必须显式调用
exit()
。计划9保留了这一模式。有些人认为这限制太大,因此更改此代码以返回
main()
的返回值:

setup_stuff();
exit(main(argc, argv));

这就是我们最终返回
int
main()
的原因。从我知道的,C++只是从C复制了这个设计方面。

这可能是有用的:这些问题的规范重复是Int是默认的返回类型的主()