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

【c命令行参数】你可以编写程序以打印所有参数。在此程序中,我们仅打印argv [1],这就是为什么它仅打印一个参数的原因。

    推荐阅读