马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
目录
前言
什么是下令行参数
argc与argv
argc (Argument Count)
argv (Argument Vector)
示例
前言
在C语言中,main函数的标准情势通常有两种:
- int main(void)
- int main(int argc, char *argv[])
复制代码 此中,argc 和 argv 是用于处置惩罚下令行参数的两个告急参数。本文将详细表明它们的含义和用法。
argc与argv
argc (Argument Count)
- argc 是一个整数,表现通报给程序的下令行参数的数目。
- 它至少为1,由于第一个参数总是程序的名称(即 argv[0])。
- 比方,假如用户在下令行中输入 ./my_program arg1 arg2,那么 argc 的值将是3。
argv (Argument Vector)
- argv 是一个指向字符指针的数组,每个指针指向一个字符串,表现一个下令行参数。
- argv[0] 是程序的名称。
- argv[1] 到 argv[argc-1] 是通报给程序的现实参数。
- argv[argc] 是一个空指针(NULL),表现参数列表的竣事。
什么是下令行参数
下令行参数(Command-Line Arguments)是在启动程序时通过下令行界面通报给程序的输入参数,通常由程序名称和参数列表构成,比方:
- ./my_program arg1 arg2 arg3
复制代码 此中“./my_program”是程序名称;“arg1 arg2 arg3”是参数列表。
参数列表打印示例
示例代码
- #include <stdio.h>
- int main(int argc, char *argv[]) {
- //打印参数个数
- printf("Number of arguments: %d\n", argc);
- //打印参数列表
- for (int i = 0; i < argc; i++) {
- printf("Argument %d: %s\n", i, argv[i]);
- }
-
- return 0;
- }
复制代码 示例运行
- ./my_program arg1 arg2 arg3
复制代码 示例输出
- Number of arguments: 4
- Argument 0: ./my_program
- Argument 1: arg1
- Argument 2: arg2
- Argument 3: arg3
复制代码 下令行参数作用安在?
有了下令行参数的存在,用户就可以在运行程序时指定某些选项,从而使程序根据差别的输入实验差别的利用。
我举个好明白的例子:输入参数1就是会员身份运行程序,内里会多许多功能,输入参数2就是以会员身份运行程序,许多功能使用受限定。
使用下令行参数指定程序功能示例
- #include <stdio.h>
- #include <string.h>
- int main(int argc, char *argv[])
- {
- //输入的参数不符合要求,提示输入要求后直接退出运行
- if (argc != 2)
- {
- printf("Usage:\n\t%s -number[1-2]\n", argv[0]);
- return 1;
- }
- //输入参数1,执行第一种功能
- if (strcmp("-1", argv[1]) == 0)
- {
- printf("function 1\n");
- }
- //输入参数2,执行第二种功能
- else if (strcmp("-2", argv[1]) == 0)
- {
- printf("function 1\n");
- }
- //输入的参数不符合要求,提示输入要求后直接退出运行
- else
- {
- printf("unknown!\n");
- printf("Usage:\n\t%s -number[1-2]\n", argv[0]);
- return 1;
- }
- return 0;
- }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
|