C++primer 中文第四版 第318页 那个程序段 if(argc!=3) 这个3是怎么回事啊 哪位大神有书的帮帮我啊 谢谢啊

如题所述

main(int argc,char **argv)
argv为指针的指针
argc为整数
另外 char **argv 可以写为char *argv[ ] 或者 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字符串。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-04-17
argc表示参数数目
例如在命令行中输入:copy a.exe b.exe
argc为3追问

这个我知道 书中前面有讲过 但是我就是不知道这里德3是怎么来的 ,这里很多单词的啊 怎么就来个3

第2个回答  2011-04-17
可能是验证用的吧。我没有这书
如国输入的是三个参数,那么程序会。。。。??
相似回答