首页 | 新闻 | 交流 | 问吧 | 文档 | 手册 | 下载 | 博客

C++ main函数 argc,argv传递参数的含义 zZ

作者:  时间: 2011-05-17

main(int argc,char **argv)
   argv为指针的指针
   argc为整数
char **argv or: char *argv[ ] or: char argv[ ][ ]
main()括号内是固定的写法。
下面给出一个例子来理解这两个参数的用法:
假设程序的名称为prog,
1.当只输入prog,则由操作系统传来的参数为:
   argc=1,表示只有一程序名称。
   argc只有一个元素,argv[0]指向输入的程序路径及名称:./prog
2.当输入prog para_1,有一个参数,则由操作系统传来的参数为:
   argc=2,表示除了程序名外还有一个参数。
   argv[0]指向输入的程序路径及名称。
   argv[1]指向参数para_1字符串。
3.当输入prog para_1 para_2 有2个参数,则由操作系统传来的参数为:
   argc=3,表示除了程序名外还有2个参数。
   argv[0]指向输入的程序路径及名称。
   argv[1]指向参数para_1字符串。
   argv[2]指向参数para_2字符串。
void    main(    int    argc,    char *argv[ ]    )  
char *argv[]    :    argv是一个指针数组,他的元素个数是argc,存放的是指向每一个参数的指针,他的第一个元素即argv[0]为编译生成的可执行文件名(包括路径eg:"F:\VC\Ex1\Debug\Ex1.exe"),从二个元素(argv[1])开始,是每一个参数  .
int    argc    表示argv的大小,是实际参数个数+1,其中+1是因为argv[0]是编译后的可执行文件名

 

原文url http://blog.csdn.net/hufengjun/archive/2011/04/11/6315515.aspx

作者: caleb yuan 发表于 2011-05-17 19:12 原文链接

评论: 0 查看评论 发表评论


最新新闻:
· Adobe让步苹果 Photoshop配件将现App Store(2011-05-17 18:03)
· 全球社交网络解析(2011-05-17 18:01)
· 为什么人们观赏而不是玩《星际争霸》(2011-05-17 17:59)
· AOL CEO:成功在于收购新资产 仍保留拨号业务(2011-05-17 17:56)
· Win7官方RSS动态主题:航拍美国(2011-05-17 17:55)

编辑推荐:不是HR,Leader你会面试应聘者吗?

网站导航:博客园首页  我的园子  新闻  闪存  小组  博问  知识库