我想像这样使用我的程序:
./program -I /usr/include/ /usr/bin/ /usr/local/include/ ...
开关可以像在 var args 列表中一样持续不断。我怎么能在 C99 中做到这一点?最好得到像 char **args_list
或 char *args_list[]
这样的东西,它包含所有像 /usr/include
和 >/usr/bin/
。
最佳答案
运行以下代码的输出:
int main(int argc, char* argv[])
{
for (int i = 1; i < argc; ++i)
{
printf("%s\n", argv[i]);
}
}
由 program -I/usr/include//usr/bin//usr/local/include/
执行
输出:
-I
/usr/include/
/usr/bin/
/usr/local/include/
请注意,在代码示例中,初始索引为 1
。这是因为 argv
变量中的第一个指针是程序的名称。在这种情况下,它将是 program
。
关于c - main 中的可变参数列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3783331/