每一个C/C++程序都必须包含一个main主函数,每个程序都是从main函数开始执行。main函数通常由操作系统调用,且是唯一被操作系统显示调用的函数;main函数执行完毕通常返回给操作系统一个值。

下面是一个简单的main函数。

int main()

{

//执行语句

Return 0;

}

main函数的返回值是一个状态指示器,操作系统一般通过main函数的返回值来确定程序是否执行完毕。

C/C++语言中的main函数,经常带有参数argc,argv,形式如下:

int main(int argc, char **argv);

或者是:

int main(int argc, char* argv[]);

参数argc 是指命令行输入参数的个数(通常以空白符分隔), 参数argv存储了所有输入的命令行参数。

比如程序是test.exe,那么在命令行运行该程序,首先使用cd命令进入test.exe所在目录,运行命令

test.exe abc  def  ghk

则argc和argv的含义如下:argc的值是 4,argv[0]是“test.exe ”,argv[1]是“abc”,argv[2]是“def”,argv[3]是“ghk”。

下面使用一个例子来说明argc和argv的使用。

假设该文件保存为test.cpp。

#include“stdio.h”

int mian(int argc,char **argv)

{

inti = 0;

for( i = 0; i<argc; i++)

{

cout<<”第”<<i<<”个参数是”<<argv[i]<<endl;

}

return 0;

}

编译连接test.cpp,得到test.exe的可执行文件;

执行下面命令:

test.exe abc  def  ghk

输出为:

第1个参数是test.exe

第2个参数是abc

第3个参数是def

第4个参数是ghk

C++主函数简要介绍相关推荐

  1. printf函数与主函数问题

    1.printf 函数输出问题 printf 函数并不会直接将数据输出到屏幕,而是先放到缓冲区中,只有一下三种情况满足,才会输出到屏幕. 1) 缓冲区满 2) 强制刷新缓冲区 fflush(缓冲区遇到 ...

  2. c51语言主函数,51单片机的基本c51语言程序介绍

    描述 c51语言程序是 一个由主函数和若干个函数构成.其中主函数就是程序的起点,单片机运行程序,首先会执行主函数里面的第一条语句,直到执行完成主函数的所有语句,单片机的程序一般都是来完成某项具体功能的 ...

  3. C语言字符串、宏定义及主函数介绍

    希望你每天醒来都是阳光的,不会因为别人的几句话.几个表情和几个举止,影响自己的心情,好好生活,总会遇见美好的事... ----  网易云热评 一.字符串 1.字符串声明 #include <st ...

  4. Android进程间通信(IPC)机制Binder简要介绍和学习计划

    在Android系统中,每一个应用程序都是由一些Activity和Service组成的,这些Activity和Service有可能运行在同一个进程中,也有可能运行在不同的进程中.那么,不在同一个进程的 ...

  5. Dalvik虚拟机简要介绍和学习计划

    出自:http://blog.csdn.net/luoshengyang/article/details/8852432 我们知道,Android应用程序是运行在Dalvik虚拟机里面的,并且每一个应 ...

  6. seaJS 简要介绍和完整例子

    从事前端开发工作的大概都有所耳闻 requireJS 这个框架,除了这个外还有一个相似的就是 seaJS,以前都是使用而已没时间写一些记录,今天有空就写一下,顺便写个例子: 什么是 seaJS ? 和 ...

  7. WAVE音频文件格式及其64位扩展格式的简要介绍

    正文 关于 WAVE 文件格式,网上有不少介绍,但关于WAVE 64位扩展格式的介绍却是几乎没有. 所以本文的目的是简要介绍标准的 WAVE 格式,以及两种主要的扩展格式. 文中所有代码都用C语言来描 ...

  8. intel Pin简要介绍及示例程序

    Intel PIN Intel PIN References 二进制动态插桩简介 源插桩与二进制插桩 静态插桩与动态插桩 常见的动态插桩工具 Intel Pin简介 Intel pin动态插桩框架 简 ...

  9. Chromium多进程架构简要介绍和学习计划

    Chromium以多进程架构著称,它主要包含四类进程,分别是Browser进程.Render进程.GPU进程和Plugin进程.之所以要将Render进程.GPU进程和Plugin进程独立出来,是为了 ...

最新文章

  1. 同域内测试蠕虫的一种方法
  2. 071_html语言代码
  3. es 全量同步mysql_什么时候该用MySQL,什么时候该用ES呢?
  4. 喜报!阿里云自研云原生数据仓库 AnalyticDB 获奖啦!
  5. firefox 插件 取消认证签名
  6. HTTP---Cookie
  7. 【转】zookeeper 的监控工具
  8. Java Math.round()函数小结
  9. web myeclipse为什么连接不上css_Web技巧 (03)
  10. HashMap简单小结
  11. html节点分析,解析html程序(C#版)——遍历各个节点(mshtml)
  12. 辨析:工作路径与脚本路径
  13. Bootstrap学习心得
  14. ACG识图搜索引擎整合及优势分析
  15. 5分钟学会用代码发送邮件
  16. Python数模笔记-NetworkX(5)关键路径法
  17. pthread_cond_wait pthread_cond_broadcast
  18. 职场人士升职加薪必备的工作软件,总有一款适合你
  19. 读博不得不明白的深刻道理
  20. oracle database各个版本地址

热门文章

  1. 计算机中丢失storm.d,WIN7更新错误8024200D的解决方法
  2. opengl剪裁空间和视口空间中不遵从右手定则,而是遵从左手定则
  3. 坐标系基础相关知识:右手定则
  4. 【分享】新浪微博、QQ分享、微信分享的申请过程
  5. mysql sql调用函数_MySQL函数使用
  6. 统计英文句子中有多少个英文单词 单词之间用空格分开
  7. 中国商界的顶级秘法之二:民营企业的五大策划法则
  8. 政务领域区块链的应用
  9. 解决 Windows 无法访问共享
  10. 操作系统面试问题集锦