0
点赞
收藏
分享

微信扫一扫

《C++11标准库》3.2.2main()定义式

Star英 2022-05-03 阅读 74
c++

对于 main() 函数,有一个重要而常被误解的核心语言点:唯一“正确且具有移植性”的 main() 函数。根据C++标准,main() 只有两种定义式具备可移植性,那就是:

int main()
{
   ......
   return 0;
}

int main( int argc , char* argv[] )
{
   ......
   return 0;
}

对于第二个样例中的参数 argv ,也就是命令行实参所形成的 array ,其类型也可定义为 char** ,但是要注意,对于 main() 函数的返回值类型必须为 int。

对于 main() 函数的返回值,你可以(但非必要)以一个 return 语句终结 main() 函数。

不同于 C,C++ 定义了一个隐晦的 return 0;于 main() 函数的终点,这意味着任何程序离开main() 函数时可以不用显示的写出return 语句。

例如:

int main()
{
   ......
   .....

}

对于main() 函数的return 语句,0以外的任何值都代表某种失败。

如果不想以“main() 返回”方式结束C++程序,通常应该调用 exit() ,quick_exit() 或者 terminate()。

举报

相关推荐

0 条评论