- 论坛徽章:
- 0
|
main函数参数请教
原帖由 "无双"] 发表:
="/usr/bin/ksh";
。。。。。。
main的参数是在shell启动程序时把它放到程序一一个预留缓冲区中
就是说程序由shell?.........
无双斑竹,我做了如下的猜想,帮忙看看是不是这样:
int start_func()
{
......
int i;
int argc;
char * argv[MAX_PARAMS+1];
......
argc=nparams;
/*nparams为已经分析到的参数个数*/
for(i=0;i<argc;i++){
argv=(char *)malloc(100);
strcpy(argv,a_parameter);
/*a_parameter是已经分析过得shell传来的参数,为字符串*/
}
argv[argc]=NULL;
main(argc,argv);
......
for(i=0;i<argc;i++){
free(argv);
}
...
}
int main(int argc,char *argv[])
{
......
}
然后将start_func编译好,作为shell的一个部分?
然后这个MAX_PARAMS就是main可以接受的最大参数。 |
|