void GetArgments(int argc, char **argv)

void GetArgments(int argc, char **argv)
{
int i;
for(int i=1;i {
if(argv[i][0]=='-')
{
switch(tolower(argv[i][1]))
{
case 'p':
if(strlen(argv[i])>3)
port=atoi(&argv[i][3]);
break;
case 'h':
hostName=&argv[i][3];
break;
case 'n':
maxService=atoi(&argv[i][3]);
break;
default:
userHelp();
break;
}
}
}
return;
}

函数有三个传入参数,i从1开始循环,只循环两次,如何读出三个参数,hostName=&argv[i][3],maxService=atoi(&argv[i][3]) 为什么下标是[i][3],求解释。

main()函数常用的格式:main(int argc,char **argv)
其中,argv为指针的指针,argc为整数。( char **argv or: char *argv[ ] or: char argv[ ][ ])

下面给出一个例子来理解这两个参数的用法:
假设程序的名称为prog:
1.当只输入prog,则由操作系统传来的参数为: argc=1,表示只有一程序名称。......
答案就在这里:关于void main(int argc, char *argv[ ])
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

我是想问里面数组下标的问题,和循环i为什么从1开始