小编Ram*_*Ram的帖子

C++ main vs C main

我正在阅读一篇关于C++ vs C的文档.文档说C++与C相比是紧密编写的.一个例子是,C允许main()函数类型为void.另一方面,C++不允许这样做,他从标准中给出了以下声明.

在C++标准中:

它的返回类型应为int,否则其类型是实现定义的.所有实现都应允许以下两个主要定义:

int main() { /* … */ }
Run Code Online (Sandbox Code Playgroud)

int main(int argc, char* argv[]) { /* … */ }
Run Code Online (Sandbox Code Playgroud)

C标准说的相同,但有一个额外的声明.

如果返回类型与int不兼容,则未指定返回到主机环境的终止状态

这表明允许不返回int的表单是故意的.

如果您有"可以实现定义的类型"的语句,您是否不允许C++编译器实现社区允许void作为类型?

c c++ standards program-entry-point

2
推荐指数
2
解决办法
7002
查看次数

标签 统计

c ×1

c++ ×1

program-entry-point ×1

standards ×1