c++标准允许主函数main()有或没有参数列表。
main函数 :
int main(int argc, char *argv[])
第一个参数argc,指明有多少个参数将被传递给主函数main(),真正的参数以字符串数组(即第2个参数argv[])的形式来传递。每一个字符串均有自己意思。在这句法上面, 记住, argc代表参数的数量, main()函数本身是在索引0为的第一参数。 所以, argc总是至少为1 。它的总数是从argv列阵的元素数目。 这意味着, argv[0]的值是至关重要的。 如果用户在控制台环境中程序名称后键入含参数的指令, 那么随后的参数将传递给argv[1] 。
在程序中获得的参数将从argv[1]开始,如函数中 获取 char* filename = arg[1];
visual studio中调试argv参数设置如下:
Properties->Configuration Properties->Debugging->Command Arguments
如果字符串有路径要转义问题
如果参数不对,会出现错误:Debug assertion failure File:isctype.c Line:56 expression unsigned( c+1 )< 256