从c ++中的main函数中返回字符串

kay*_*yle 3 c++

有没有办法从c ++中的main函数返回字符串?我提到下面的示例程序

string main(int argv, char* argc[])
{
  .
  .
  return "sucess";
}
Run Code Online (Sandbox Code Playgroud)

Pie*_*aud 8

标准说:

3.6.1主要功能[basic.start.main]

2 /实现不应预定义主要功能.此功能不应过载.它应该具有int类型的返回类型,否则其类型是实现定义的.所有实现都应允许两者

  • ()返回int和的函数
  • 返回int的函数(int,指向char的指针)

作为主要的类型.[...]

所以不,你必须返回一个int.

根据您对帖子的评论,您似乎只想在标准输出上输出一个字符串,然后您可以执行以下操作:

#include <iostream>
int main()
{
    std::cout << "Success" << std::endl;
    // No need for return 0; it is implicit in C++
}
Run Code Online (Sandbox Code Playgroud)

正如Kerrek SB在评论中所说的那样,return 0;隐含在C++中(标准§3.6.1 / 5):

[...]如果控制到达结束而main没有遇到return语句,则效果是执行

return 0;
Run Code Online (Sandbox Code Playgroud)