C++内的命令行参数储存在main函数中的argv参数中 而argc储存了命令行参数个数 由系统在执行时动态分配
实例:
#include <cstdio>/
argc:命令行参数个数
argv:储存了所有命令行参数,其中第一个(即argv[0])为当前可执行文件名
/
int main(int argc,char argv[])
{
int i;
for(i=0;i<argc;i++)
if(argv[i]=="test")
puts("Found argument 'test'");
return 0;
}
所谓c语言的命令行参数,主要指的main函数的参数,main函数有操作系统来调用,用户通过操作系统来运行软件,因此可以传递参数。比如
int main (int argc, char argv[]) //这是控制台上的main函数其中argc用于说明传递的命令行参数的个数,argv是一个char 的指针数组,每1个元素代表一个参数。其中argv[0]即表示程序本身。
程序运行时提供的一些参数,因为以前是从命令行输入,所以沿用了这个名称。比如你在 DOS 下使用 DIR 命令的时候就可以:
DIR /P
表示分页显示,这里的 /P 就是命令行参数。
命令行参数的常见应用领域
1 初始化程序
在CMD下输入这个命令 notepad d:\testtxt,此时记事本程序会判断D盘下有没有texttxt文件,如有则打开,如没有则提示是否要新建。2 设置程序执行方式
我们在手工打OS补丁时,根据传入的参数可控制补丁程序的执行
以KB打头的补丁文件,参数可选/quiet/norestart/o,分别表示安装时无需用户参与、安装完成后不重启、不提示覆盖OEM文件。
以Q打头的补丁文件,参数可选/q/o/z,分别表示安装时无需用户干预、不提示覆盖OEM文件、安装完后不重新启动。命令行参数在C#中实现static void Main(string[] args)
{
ApplicationEnableVisualStyles();
ApplicationSetCompatibleTextRenderingDefault(false);
ApplicationRun(new Form1(args));
} args是一个参数数组,这个名字只代表参数的意思,可以换成任何符合C#命名规范的名字。
通过访问这个数组,即可得到各个参数。 示例 1
本示例演示如何输出命令行参数
// cmdline1cs
// arguments: A B C
using System;
public class CommandLine
{
public static void Main( string[] args )
{
// The Length property is used to obtain the length of the array
// Notice that Length is a read-only property:
ConsoleWriteLine( "Number of command line parameters = {0}",
argsLength );
for( int i = 0; i < argsLength; i++ )
{
ConsoleWriteLine( "Arg[{0}] = [{1}]", i, args[i] );
}
}
}
输出
使用如下所示的一些参数运行程序:cmdline1 A B C
输出将为:
Number of command line parameters = 3
Arg[0] = [A]
Arg[1] = [B]
Arg[2] = [C]
示例 2
循环访问数组的另一种方法是使用 foreach 语句,如本示例所示foreach 语句可用于循环访问数组或“NET Framework”集合类它提供了一种简单的方法来循环访问集合
// cmdline2cs
// arguments: John Paul Mary
using System;
public class CommandLine2
{
public static void Main( string[] args )
{
ConsoleWriteLine( "Number of command line parameters = {0}",
argsLength );
foreach( string s in args )
{
ConsoleWriteLine( s );
}
}
}
输出
使用如下所示的一些参数运行程序:cmdline2 John Paul Mary
输出将为:
Number of command line parameters = 3
John
Paul
Mary
以上就是关于如何在C++中解析命令行参数全部的内容,包括:如何在C++中解析命令行参数、什么是c的命令行参数、命令行参数有什么用啊等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!