C语言教程
C语言控制语句
C语言函数
C语言数组
C语言指针
C语言字符串
C语言数学函数
C语言结构
C语言文件处理
C预处理器

C语言命令行参数

从命令行传递的参数称为命令行参数。这些参数由main()函数处理。
要支持命令行参数,您需要按如下所示更改main()函数的结构。
int main(int argc, char *argv[] )
在这里, argc 计算自变量的数量。它将文件名作为第一个参数。
argv [] 包含参数总数。第一个参数始终是文件名。

示例

让我们看看命令行参数的示例,在该示例中,我们传递了一个带有文件名的参数。
#include <stdio.h>
void main(int argc, char *argv[] )  {
   printf("Program name is: %s\n", argv[0]);
 
   if(argc < 2){
      printf("No argument passed through command line.\n");
   }
   else{
      printf("First argument is: %s\n", argv[1]);
   }
}
在Linux中如下运行该程序:
./program hello
在Windows中从命令行如下运行该程序:
program.exe hello
输出:
Program name is: program
First argument is: hello
如果传递许多参数,它将仅输出一个。
./program hello c how r u
输出:
Program name is: program
First argument is: hello
但是,如果在双引号中传递许多参数,则所有参数将仅被视为一个参数。
./program "hello c how r u"
输出:
Program name is: program
First argument is: hello c how r u
您可以编写程序以打印所有参数。在此程序中,我们仅打印argv [1],这就是为什么只打印一个参数的原因。

昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4