main(int argc, char*argv[])函数里参数的含义

首先假设我们写了一个处理数据的程序,以图像处理为例。

处理程序需要图片数据,读取数据一般有两种情况,

一,程序中把读入的路径写死。

二,使用带参数的main函数。

当然还有使用一些界面框架之类的方法,比如弹出一个文件选择框等等。这样就太麻烦了。

下面说进入正题。

如果使用第一种方法,读入一个图片,进入处理程序,得到结果。

如果想换一张图片,需要不断地修改源代码或者修改图片路径名称来适应源代码,比较麻烦。

使用第二种方法,

首先介绍一下参数含义

int argc,代表命令行现在所在的位置。

char *argv[] 代表命令行的字符内容。

只有这两句话还是不太明白什么意思,要理解这个首先要知道这种类型的程序是怎么执行的。

这种类型的程序有两种执行方式。

一,dos环境下执行。

一般程序执行之后会再Debug(/Release)文件夹里生成一个exe,这个我们在编译连接之后就会得到。在开始里输入cmd,弹出dos菜单,进入这个exe,例子如下图


此时,argc的数值为1.argv[0] = "F:\In\FFF\Debug>FFF.exe"

接下来打空格,输入第一个字符串


此时,argv = 2,argc[1] = "test.png"

以此类推,当参数输入完成时


此时,argv = 4,argc[4] = "model3D.yml".

参数输入完毕,点击回车运行程序。

参数的输入实际上是在main()函数执行之前做的工作,输入完参数之后才开始执行main()函数里的程序。

二,vs2010环境下运行。

这种方法允许调试程序,需要在工程属性界面输入执行exe的路径和参数即可。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值