这两个参数用于在运行程序时,从外部给程序传递参数,其中argc中保存了参数的个数,argv中分别保存了各个参数.argv[]是一个数组 例如一个程序的main()函数头部形如int main(int argc, char *argv[]),编译链接后生成的可执行文件名为a.exe,那么请注意下面的调用: a.exe 第1个传入参数 第二个传入参数....... count
在上面的命令行中,a.exe是要运行的程序名称,后面的abc和def就是传入程序的两个参数,这两个参数就通过argc和argv传入程序,注意这些参数都是字符串。 通过上面的调用,在这个程序中,argc=count+1,a.exe是第一个参数,这个字符串将保存在argv[0]中,abc和def分别是第二和第三个参数,它们分别被保存在argv[1]和argv[2].......argv[count]中
例如: 输入长宽,计算矩型面积 void main(int argc,char *argv[]){ float area,w,h; if (argc < 3) { printf("\007Usage:%s width height\n",argv[0]); printf("for example:%s 12.3 4.5\n",argv[0]); exit(0); } // 参数0 是程序名,argc参数个数 sscanf(argv[1],"%f",&w); // 从参数1取得宽 sscanf(argv[2],"%f",&h); // 从参数2取得高 area = w * h; printf("area=%f\n",area); exit(0); } 命令行: prog.exe 12.3 4.5