c++中main函数的返回值有什么作用?

 我来答
正能量女战神
高粉答主

推荐于2017-10-05 · 关注我不会让你失望
知道大有可为答主
回答量:1.8万
采纳率:80%
帮助的人:2234万
展开全部
c++中main函数的返回值的作用:
main函数的返回值就是运行其程序的这个进程的状态码,命令行程序常常通过判断相应命令(进程)的状态码来判断相应命令是结果是否正常。
【扩展】
VC++是允许void main这种形式的程序入口原型的,之所以允许这么做是有历史原因的,在最初的K&R C中main函数的原型为:main(),没有对返回值和参数做出明确规定,为此存在不同main函数原型扩展。
heresy_me
2016-07-28 · TA获得超过1719个赞
知道小有建树答主
回答量:1708
采纳率:42%
帮助的人:321万
展开全部

程序运行之后得出的结果可以传给系统,在cmd下面,运行一个程序,程序返回的值会传到%errorleve%环境变量中,例如:

#include <string>
#include <iostream>
int get_help();
int procedure();
int main(int argc,char* argv[])
{
   if (!argv[1])  return procedure();
   if (argv[1]==std::string("--help")) return get_help();
   return -1;
}
int get_help()  {
  std::cout << "如果你输入Hello返回1,输入World返回2,其他的就返回3\n";
  return 0;
};
int procedure()  {
  string str;
  std::cin >> str;
  if (str=="Hello")  return 1;
  if (str=="World") return 2;
  return 3;
}

例如这个程序的名字main.exe,编译运行这个程序之后,用cmd的人就能用errorlevel这个变量了,例如我在cmd下运行这个程序并利用这个返回值(下面是一段cmd的批处理代码):


@echo off

REM   REM是cmd的注释命令,所以本行代码会被忽略,下面我首先运行main.exe

main.exe

REM  下面我利用程序的返回值,下面是cmd的批处理代码

if errorlevel 3 echo 你胡来!

if errorlevel 1 echo 你在main.exe里输入的是Hello,返回值是:%errorlevel%

if errorlevel 2 echo 你在main.exe里输入的是World,返回值是:%errorlevel%

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2012-01-14
展开全部
main()的返回值是个状态指示器,返回0表示程序运行正常,返回非0值通常表示运行过程异常,具体的异常类型可以通过返回不同的非0值来表示,这些非0值的意思对系统有依赖性。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
earth717
2012-01-14 · 超过14用户采纳过TA的回答
知道答主
回答量:249
采纳率:0%
帮助的人:141万
展开全部
返回值就是一个函数执行完成之后返回的最终结果,main函数的返回值类型与其他函数的调用或者返回值是毫无关系的,main函数的返回值是返回给执行这个进程的进程
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
451284055
2012-01-14 · TA获得超过222个赞
知道小有建树答主
回答量:429
采纳率:14%
帮助的人:76.3万
展开全部
这个只是入口函数,相当于大门,要靠这个函数进去!跟开你家的大门区别是一样的!至于开了大门是什么结果,你也可以知道了的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式