gpt4 book ai didi

C++ 编辑 char* argv[] 的元素

转载 作者:IT王子 更新时间:2023-10-29 01:08:28 25 4
gpt4 key购买 nike

大家都知道这个函数:

int main(int argc, char* argv[])
{

}

我想在 Linux 中为我的程序编写命令行界面,这通常由 getopt_long()

我的程序会像这样从命令行执行:

pop3 get --limit 25 --recent 

因此,argv[] 将包括 pop3 作为它的程序名称,其余的都被视为选项。我想从我的字符串中删除 pop3 并将其后的第一个标记设置为数组的第一个元素。除了循环之外,还有其他方法可以做到这一点吗?

最佳答案

递增argv指针,递减argc。示例:

int main(int argc, char *argv[])
{
argc--;
argv++;

return 0;
}

这是有效的,因为当你递增argv时,内存中仍然有之前的数据,只是argv的基地址增加了。然后你递减 argc,因为你现在少了一个参数。

关于C++ 编辑 char* argv[] 的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32354233/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com