这可能是因为我是 C 编程新手,但如果我正确地记得我的讲师
第 1 部分)
execvp(2)
接受 2 个参数(obv),第一个是命令,第二个是字符串数组,例如
char *args[] = {"ls", "-l", "-a", NULL};
我能否解释一下如何char *args[]
使它成为一个字符串数组而不是一个包含字符的数组(一个 C 空终止字符串)?
第2部分)
我怎样才能做到这一点,以便我可以逐个字符串添加到这个数组中?我能做到吗
int i;
char *args[255];
for(i = 0; i < strlen(lol); i++)
{
args[i] = //new string being passed in at runtime
}
它会那样工作吗?假设我正在分解来自 stdin 的输入,并且我想将参数放入args[i]
.