码迷,mamicode.com
首页 > 其他好文 > 详细

main函数的参数

时间:2015-05-03 11:53:30      阅读:109      评论:0      收藏:0      [点我收藏+]

标签:

 在一些教材中,我们常常可以看到main函数的形式如下:int main(int argc,char* argv[]),这两个参数是干什么的呢?如何传递给main函数呢?

1.含义

  首先必须知道,main函数是由系统调用的,在调用的同时传递参数。

  例如,在文件file1.c中,有如下内容:

技术分享
#include <stdio.h>

int main(int argc,char* argv[])

{

         printf("exe executed!\n");

}
技术分享

经过编译后,在工程目录的debug文件夹下,可以得到“file1.exe”文件,我们要在DOS下执行这个文件,就要以一定的格式输入命令行,格式如下:

         命令名  参数1,参数2,……参数n

比如,要执行上述exe文件,可以输入:

     file1 

可以得到以下结果:

技术分享

如果我们要传递参数,则可以输入以下内容:

         file1 China BeiJing

现在,我告诉您:

  argc的含义是argument count:它是一个int行变量,表示传递给main函数的参数数量;

  argv的含义是argument value(值):它是一个指向字符串的指针数组,每个指针元素指向各个具体的参数;

您可以猜到argc的值和argv的值是多少了么?

argc=3,而不是2,因为命令名“file1”也算一个参数!因此从此处也可以知道,argc是恒>=1的。

而argv呢?看下图:

技术分享

2.用法

  既然知道了各个参数的含义,那么如何使用该参数呢?看了下面这个简单的程序您就会明白:

技术分享
#include <stdio.h>
int main(int argc,char* argv[])
{
    while(argc>0)
    {
        argc--;
        printf("%s\n",*argv);
        argv++;   /*指向下一条参数*/
    }
}
技术分享

调用方法和运行结果:

技术分享

main函数的参数

标签:

原文地址:http://www.cnblogs.com/god-love-yao/p/4473422.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!