char setup_args(int argc , char argv){
char new_argv;
int size;
char s;
if(argc <= 0)
return argv;
size = 0;
for(int i = 0 ; i < argc ; i++){
size += strlen(argv[i]) + 1;
//这里加1是为了把最后一个/0的结尾字符串copy,为获取字符串提供支持。使用 //strlen就可以获取这个字符串长度
}
//为指针索引分配空间
size += (argc + 1) * sizeof(char);
new_argv = malloc( size);
if(new_argv == null)
return argv;
s = (char*) &new_argv [argc + 1];
for (i = 0; i < argc; i++) {
size = strlen(argv[i]) + 1;
memcpy(s, argv[i], size);
new_argv[i] = s;
s += size;
}
new_argv[i] = NULL;
return new_argv;
}