(本文为博闻网版权所有,转载必须注明出处。)

在C中,获取用户输入的命令行参数是很方便的。程序的主函数会接受一个argv参数。有许多高级的库函数都会用到argv结构,所以了解此结构对一个C程序员来说将是很有用的。

请录入并编译下面的程序:

#include 

int main(int argc, char *argv[])
{
int x;

printf("%d
\n",argc);
for (x=0; x

prinff("%s\n",argv[x]);

return 0;

}

本程序中,主函数接受两个参数:argv和argc。其中argv是一个字符串指针数组,它们指向从UNIX命令行运行程序时输入的参数。而argc即为参数的个数。上面这段代码会打印所有的命令行参数。作为试验,请把程序编译生成的可执行文件命名为aaa,然后键入aaa xxx yyy zzz运行程序。程序将会分行打印出命令行参数xxx、yyy 和 zzz。

char *argv[]是一个字符串指针数组。换句话说,数组的每个元素是一个指针,指针指向一个字符串(严格说是字符串的第一个字符)。所以,argv[0]指向的字符串即命令行的第一个参数(程序名),argv[1]指向第二个参数,以此类推。argc表示数组中有多少指针是有效的。由此可见,上面的程序只是打印了argv指向的每个有效字符串而已。

使用argv您可以很方便地让程序对用户输入的命令行参数作出响应。例如,您可以让程序在检测到程序名后第一个参数是help时,将帮助信息输出到标准输出设备。还可以把文件名作为参数传入程序供fopen等函数使用。




 打印  电子邮件  反馈  引用
编辑推荐
软件狗是什么?
软件狗(Software Dog)是一种计算机软件的加密方式,是“硬件加密锁”的
间谍软件工作原理
您的计算机是否曾变得非常慢,即使打开Word处理器也会占用很长时间,间谍软件可能
什么是路由算法?
路由器是管理网络流量和发送数据包的,但是它是如何决定数据包发送的呢?通过本文,博
Gnutella文件共...
Napster在巅峰时期或许是有史以来最受欢迎的网站。紧随其后的文件共享体系架构
主页 |  公司信息 |  广告服务 |  招聘信息 |  隐私 |  联系我们 |  帮助 |  条款和条件