C语言 - CMD带参数执行( argc+argv )

版权声明:转载请注明出处 https://blog.csdn.net/qq_42292831/article/details/88910406

argc:arguments-count(argument 变元)

表示命令行参数总个数,包括可执行程序名,其中当argc=1时表示只有一个程序名称,此时存储在argv[0]中;

argv:arguments-value

存放指向字符串参数的指针数组:

argv[0] 指向程序运行时的全路径名
argv[1] 指向程序在DOS命令中执行程序名后的第一个字符串
argv[2] 指向执行程序名后的第二个字符串
argv[argc] 为NULL.



Example-1:

#include <stdio.h>
#include <windows.h>
int main_1(int argc, char **argv)
{
	int i;
	printf("参数个数= %d\n", argc);
	for (i = 0; i<argc; i++)
	{
		printf("参数序号= %d ", i);
		printf("参数值= %s\n", argv[i]);
	}
	system("pause");
	return 0;
}

Example-2:

#include <stdio.h>
#include <string.h>

int main(int argc, char **argv)
{
		if (argc<2)
		{
			printf("Without argcs!\n");
			return 0;
		}
		if (!strcmp(argv[1], "-help"))
		{
			printf("-f 强制执行\n");
			printf("exit 退出\n");
			return 0;
		}
		else if (!strcmp(argv[1], "-c"))
		{
			// ...
			printf("-c Test!");
			return 0;
		}
		else if (!strcmp(argv[1], "-f"))
		{
			printf("-f Test!");
			return 0;
		}
		else if (!strcmp(argv[1], "-login"))
		{
			printf(">>> ");
			int temp = 0;
			while (scanf("%d",&temp) != EOF)
			{
				printf(">>> ");
			}
			return 0;
		}
		else
		{
			return 0;
		}
	
}

猜你喜欢

转载自blog.csdn.net/qq_42292831/article/details/88910406