对,假设你编写的程序是notepad,编译后它成为可执行文件notepad.exe,那么你就可以用这样的方式运行它,后面的aaa.txt就是给这个程序传入的参数。在这里,argc是2,因为有两个参数,argv[0]是程序自身的名字notepad.exe,argv[1]是第一个参数aaa.txt。你看代码,main(int argc, char* argv[]),这个main()函数接收两个参数,都是操作系统传给它的,argc获得参数的个数(2),argv[]是一个字符串数组,依次获取每个参数(以字符串的形式表示)。
这里main()得到什么参数,是由你键入上面命令的时候指定的。有的时候,人键入的指令可能与程序规定的格式不符,那么就需要在程序中检查他到底输入了什么。比如程序需要2个参数,那么argc应该等于3(必须加上程序名自身),如果实际上他只输入了1个,就可以在这个时候检查出来,提醒他漏了输入某些参数。
这里main()得到什么参数,是由你键入上面命令的时候指定的。有的时候,人键入的指令可能与程序规定的格式不符,那么就需要在程序中检查他到底输入了什么。比如程序需要2个参数,那么argc应该等于3(必须加上程序名自身),如果实际上他只输入了1个,就可以在这个时候检查出来,提醒他漏了输入某些参数。
授人以渔,不授人以鱼。