main()函数既可以是无参函数,也可以是有参的函数。对于有参的形式来说,就需要向其传递参数。但是其它任何函数均不能调用main()函数。当然也同样无法向main()函数传递,只能由程序之外传递而来。这个具体的问题怎样解决呢?
我们先看一下main()函数的带参的形式:
1 main(int argc,char *argv[])
2 {
3 .....
4 }

 

从函数参数的形式上看,包含一个整型和一个指针数组。当一个C的源程序经过编译、链接后,会生成扩展名为.EXE的可执行文件,这是可以在操作系统下直接运行的文件,换句话说,就是由系统来启动运行的。对main()函数既然不能由其它函数调用和传递参数,就只能由系统在启动运行时传递参数了;

    在编译连接好得到一个可执行文件test.exe后,将在系统执行这个可执行文件时,将参数一起传入,./test.exe a b c d

a b c d 分别为四个参数,其关系为 :

argc = 5
argv[0]=./test.exe
argv[1]=a
argv[2]=b
argv[3]=c
argv[4]=d

posted on 2016-07-08 15:22  人生一世,草木一秋。  阅读(21)  评论(0编辑  收藏  举报