argc 是 argument count的缩写,表示传入main函数的参数个数;

argv 是 argument vector的缩写,表示传入main函数的参数序列或指针,并且第一个参数argv[0]一定是程序的名称,并且包含了程序所在的完整路径,所以确切的说需要我们输入的main函数的参数个数应该是argc-1个;

简单用法示例,新建工程键代码:

void main(int argc,char *argv[])
{ for(int i=0;i<argc;i++)cout<<"argument["<<i<<"] is: "<<argv[i]<<endl;
}

argv是指向指针的指针,main函数的第二个参数“char *argv[]“也可以替换为 “char **argv“,两者是等价的。
Linux终端编译使用 make 编译之后 附加main传入参数运行即可显示。

main(int argc,char *argv[ ])

1.argc为整数

2.argv为指针的指针(可理解为:char **argv or: char *argv[] or: char argv[][] ,argv是一个指针数组)

注:main()括号内是固定的写法。

3.下面给出一个例子来理解这两个参数的用法:

假设程序的名称为prog,

当只输入prog,则由操作系统传来的参数为:

argc=1,表示只有一程序名称。

argc只有一个元素,argv[0]指向输入的程序路径及名称:./prog

当输入prog para_1,有一个参数,则由操作系统传来的参数为:

argc=2,表示除了程序名外还有一个参数。

argv[0]指向输入的程序路径及名称。

argv[1]指向参数para_1字符串。

当输入prog para_1 para_2 有2个参数,则由操作系统传来的参数为:

argc=3,表示除了程序名外还有2个参数。

argv[0]指向输入的程序路径及名称。

argv[1]指向参数para_1字符串。

argv[2]指向参数para_2字符串。

4.void main( int argc, char *argv[] )

char *argv[] : argv 是一个指针数组,他的元素个数是argc,存放的是指向每一个参数的指针

c语言中命令行参数argc,argv[]详解相关推荐

  1. c++笔记(1):C++中命令行参数argc,argc[ ]究竟是什么

    C++中命令行参数argc,argc[ ]究竟是什么 1.argc为整数 2.argv为指针的指针(可理解为:char **argv or: char *argv[] or: char argv[][ ...

  2. 在c语言中命令行参数是什么,C语言命令行参数

    这是可能在命令行中的一些值传递给C程序执行.特别是从参数传入,而不是外界硬编码写入这些值到代码控制程序中,这些值被称为命令行参数,很多时候,它们对程序很重要. 命令行参数使用main()函数的参数,其 ...

  3. Go语言中命令行参数的实现

    为什么80%的码农都做不了架构师?>>>    在写命令行程序时,对命令参数进行解析是常见的需求.各种语言一般都会提供解析命令行参数的方法或库,以方便程序员使用.如果命令行参数纯粹自 ...

  4. 命令行参数argc和argv的解释

    今日学习到K&R第5.10节,谈及命令行参数argc和argv,以下是本人的一些见解和思考. 在C语言环境中,main函数的括号里会有两个参数:argc和argv. 例如: int main( ...

  5. python 命令行参数-python中命令行参数

    python中有一个模块sys,sys.argv这个属性提供了对命令行参数的访问.命令行参数是调用某个程序时除程序名外的其他参数. sys.argv是命令行参数的列表 len(sys.argv)是命令 ...

  6. c语言学习进阶-C语言带命令行参数的文件数据批量计算

    C语言带命令行参数的文件数据批量计算 (1)假设输入文件中的数据为多行整数,把数据文件命名为"InputData.txt",也可以命名为任意的文件名,尝试设计一个c 语言程序, 主 ...

  7. c语音学习进阶-C语言带命令行参数的程序设计

    C语言带命令行参数的程序设计 (1)深入理解并学习带命令行参数的程序设计方法,使用c 语言完成带命令行参数的科学计算程序,能从给定的任意文件名的文件当中输入数据,并能向给定的任意文件名的输出文件当中输 ...

  8. 文本编辑器中命令行参数的应用

    文章目录 1 文本编辑器中命令行参数的应用 1 文本编辑器中命令行参数的应用 我们要知道对于每一个应用程序我们都能够接收命令行参数,那么对于GUI系统中命令行参数如何传递到应用程序呢? 主要有如下两种 ...

  9. linux cp -r 参数,Linux系统中cp命令的参数及用法详解

    Linux系统中cp命令主要是用来复制文件或者目录.下面由学习啦小编为大家整理了Linux系统中cp命令的参数及用法详解的相关知识,希望对大家有帮助! Linux系统中cp命令的参数及用法详解:参数说 ...

最新文章

  1. vc++从txt文件中读取数据
  2. SAP-PM 的工具管理篇
  3. Spring框架—SpringBean配置
  4. 前端框架 渐进式框架
  5. AOP切入同类调用方法不起作用,AopContext.currentProxy()帮你解决这个坑
  6. 前端学习(1544):MVC的组成部分2
  7. a标签的href与onclick中使用js的区别
  8. [翻译]API Guides - Bound Services
  9. android R vendor.boot-hal-1-1启动失败问题分析
  10. leetcode —— 59. 螺旋矩阵 II
  11. 鸿蒙os会给小米用吗,国内手机厂商是否支持鸿蒙?中兴正式回应!小米的态度很意外!...
  12. 写个爬虫,爬图片,mzitu
  13. 腾讯广点通DMP广告数据提交回传对接方法解析
  14. 图表排版设计html,网页的排版(表格篇上)
  15. 【I.MX6ULL】6ull 加载 linux 驱动模块失败
  16. 分析保镖人才网网站优化与搜索引擎相关建议
  17. 51单片机LCD1602液晶屏显示
  18. 查找0-N之间的所有素数(质数)
  19. Spark累加器的作用和使用
  20. 虚拟机VMware使用U盘装系统

热门文章

  1. 小程序未来几年的一个发展趋势!
  2. python人物代码_Python 超级玛丽代码实现:人物行走和碰撞检测
  3. 安装openSuSE 11.0及其AMD Atheros AR8151网卡驱动
  4. ARM 920T CP15 协处理器
  5. 记录下重装xp系统的坑
  6. 无尽之海:从手机到万物
  7. BurpSuite如何在各浏览器下配置代理
  8. Nginx 实现按域名分类转发
  9. android自带拍照软件调用
  10. 无需进行滤波后处理,利用循环推断算法实现歌唱语音分离