C++中main函数中参数argc和argv的使用实例
程序员文章站
2022-07-15 09:21:51
...
含义解释
(1).int argc:即为arguments count(参数数)
运行程序传送给main函数命令行参数的总数,包括可执行程序名。当argc=1时表示只有一个程序名称,此时存储在argv[0]中.(2).char **argv:即为arguments value/vector(参数值)
字符串数组,用来存放指向字符串参数的指针数组,每个元素指向一个参数,空格分隔参数,长度为argc。数组下标从0开始,
argv[0] 指向程序运行时的全路径名
argv[1] 指向程序在DOS命令中执行程序名后的第一个字符串
argv[2] 指向执行程序名后的第二个字符串
argv[argc] 为NULL.
确切的说需要我们输入的main函数的参数个数应该是:argc-1;
应用实例
实例1:新建工程键代码:
#include <iostream>
using namespace std;
void main(int argc,char *argv[])
{
for(int i=0;i<argc;i++)
{
cout<<"argument["<<i<<"] is: "<<argv[i]<<endl;
}
system("pause");
}
当没有参数传入时,第一个变量argv[0]依然存在,保存的是函数exe文件的存放地址。
argv是指向指针的指针,“char *argv[]“也可以替换为 “char **argv“,两者是等价的。
给main函数传递参数有两种方法,第一种是在编译环境中设置,以vs2013为例,项目—>属性—>配置属性—>调试—>命令参数,在命令参数中输入,每个参数之间用空格隔开。
第二种是经常用的方式,通过命令提示符传入。首先打开命令窗口,这里po2个简便方法:
(1)在exe文件所在目录下按shift键同时右击选择打开命令窗口。(2)打开命令窗口后,把exe文件直接拖入命令窗口。
之后输入传入参数,以空格分隔,之后回车,显示如下:
实例2:opencv显示图片
#include <iostream>
#include <core/core.hpp>
#include <highgui/highgui.hpp>
using namespace std;
using namespace cv;
void main(int argc, char **argv)
{
Mat image = imread(argv[1]);
imshow("image", image);
waitKey();
system("pause");
}
参考:
http://blog.csdn.net/eastmount/article/details/20413773
http://blog.csdn.net/dcrmg/article/details/51987413
上一篇: jsp自定义标签写法
下一篇: C语言中的内置函数
推荐阅读
-
OpenCV中的新函数connectedComponentsWithStats使用(python和c++实例)
-
PowerShell函数中的开关参数介绍和创建实例
-
分享js中apply和Math.max()函数的使用实例
-
关于int main( int argc, char* argv[] ) 中arg和argv参数的解析及调试
-
关于int main( int argc, char* argv[] ) 中arg和argv参数的解析及调试
-
C++ main函数中参数argc和argv相关定义与研究
-
关于int main( int argc, char* argv[] ) 中arg和argv参数的解析及调试
-
C++中main函数中参数argc和argv的使用实例
-
main函数中的argc和argv是什么意思?
-
C++中的类和对象的封装及函数实例讲解