Avatar ·

C++中main()函数应该返回什么?正确的返回值

大家好!我刚开始学习C++,对`main()`函数有一个基础性问题。在不同的代码示例中,我看到`main()`被声明为`int`类型,但有时我也遇到`void main()`或者甚至没有类型的`main()`。我完全糊涂了。 以下是我遇到的一些示例: ```cpp // 示例1 void main() { // ... } // 示例2 main() { // ... } // 示例3 int main() { // ... return 0; } // 示例4 int main() { // ... return 1; } ``` 我的编译器(Visual Studio 2019)对`void main()`报错,但我看到在一些旧书中使用了这种写法。那`return`呢?我在某处读到`return 0`表示成功完成,而`return 1`表示错误。但如果我不返回任何东西呢?这会被视为错误吗?而且,为什么操作系统需要知道我的程序返回了什么? 我还听说过`EXIT_SUCCESS`和`EXIT_FAILURE`这两个常量。什么时候应该使用它们?