C++获取命令行参数命令

1直接命令行行输入

在exe文件夹  shift+鼠标右键  从命令行进入当前文件夹

 

执行 

2从脚本启动

 

每个参数用空格分开

Set ws = Createobject("Wscript.shell")

ws.run "Project1.exe 0 1 ./pic/0/ 2592.88 2048", 1
WScript.Sleep 200


#关闭
ws.run "taskkill /f /im Project1.exe",0

  

run函数有三个参数,

第一个参数是你要执行的程序的路径,若路径中存在空格,记得要用""括起来,如 """C:Program Files n.exe"""的形式或者Chr(34)&"C:Program Files n.exe"&Chr(34)的形式,

第二个程序是窗口的形式,0是在后台运行;1表示正常运行;2表示激活程序并且显示为最小化;3表示激活程序并且显示为最大化;一共有10个这样的参数如下表。

intWindowStyle 说明
0 隐藏一个窗口并激活另一个窗口。
1 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。第一次显示该窗口时,应用程序应指定此标志。
2 激活窗口并将其显示为最小化窗口。
3 激活窗口并将其显示为最大化窗口。
4 按最近的窗口大小和位置显示窗口。活动窗口保持活动状态。
5 激活窗口并按当前的大小和位置显示它。
6 最小化指定的窗口,并按照 Z 顺序激活下一个顶部窗口。
7 将窗口显示为最小化窗口。活动窗口保持活动状态。
8 将窗口显示为当前状态。活动窗口保持活动状态。
9 激活并显示窗口。如果窗口处于最小化或最大化状态,则系统将其还原到原始大小和位置。还原最小化窗口时,应用程序应指定此标志。
10 根据启动应用程序的程序状态来设置显示状态。

  

第三个参数是表示这个脚本是等待还是继续执行,如果设为了true,脚本就会等待调用的程序退出后再向后执行。 
其实,run做为函数,前面还有一个接受返回值的变量,一般来说如果返回为0,表示成功执行,如果不为0,则这个返回值就是错误代码,可以通过这个代码找出相应的错误。

代码

#include <iostream>

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

{
	cout << "---------------说明-----------------" << endl;
	cout << "输入参数都已char数组存在argv[i]" << endl;
	cout << "输入参数argv[0]是exe的路径" << endl;
	cout << "输入参数:" << "Project1.exe 0 1 ./pic/0/ 2592.88 2048" << endl;
	
	cout << "----------------全部参数----------------" << endl;
	cout << "输入参数总数是:" << argc << endl;

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

		cout << "第" << i << "个参数是:" << argv[i] << endl;
	}
	cout << "----------------参数转化----------------" << endl;

	int c_int2int = atoi(argv[1]); //0
	cout <<"int参数类型:" << c_int2int << endl;

	string c_int2string= string(argv[1]);//0
	printf("int参数转化string:%s 
", c_int2string);


	string c_string2string = string(argv[3]);// ./pic/0/
	printf("string参数:%s 
", c_string2string);

	string c_float2string = string(argv[4]);// 2592.88
	printf("float数据转string参数:%s 
", c_float2string);

	cout << "--------------------------------" << endl;
	system("pause");

}

  

原文地址:https://www.cnblogs.com/kekeoutlook/p/13157298.html