以下代码访问命令行参数。
#include <stdio.h>
int main(int argc, char *argv[])
{
if(argc>1)
printf("Greetings, %s!\n",argv[1]);
return(0);
}
main()
函数现在显示它的两个参数argc
和* argv []
。
它使用int
类型的argc
参数来确定在命令提示符下是否在程序名后键入了任何其他项。
它使用字符串值(char
数组)argv [1]
在命令提示符下显示程序名后的第一个项目。
可以像这样运行程序:
c:\> main.exe i1
代码仅使用第一个命令行参数,因此如果键入更多,则会忽略它们。
在上一行中,输出中只显示i1
的名称。
当不接受任何命令行参数的程序时,可以将main()
函数的括号留空。类似下面这个:
int main()
在代码中使用参数时,必须声明它们。
int main(int argc, char *argv[])
argc
是参数计数值。它是一个整数,范围从1
到在命令提示符下输入程序名后的项目数。* argv []
是一个char
指针数组。可以将其视为字符串数组。
以下代码计算在命令行键入的参数数量,显示该值argc
。
#include <stdio.h>
int main(int argc, char *argv[])
{
printf("You typed %d arguments.\n",argc);
return(0);
}
执行上面示例代码,得到以下结果:
You typed 1 arguments.
main()
函数直接从操作系统接收有关命令行参数的信息。将评估命令行,并对参数进行统计和引用,程序名称本身被认为是第一个参数。可以通过在代码中添加一行代码来验证它:
printf("That argument is %s.\n",argv[0]);