gpt4 book ai didi

c - 以 ip-range 字符串作为参数并返回包含 'C' 中的 ips 列表的数组的函数

转载 作者:太空宇宙 更新时间:2023-11-04 03:58:08 24 4
gpt4 key购买 nike

我是使用 C 的 2 个月大的 child 。我有一个简单的问题,将 ip-range 作为参数传递给 main 函数并获得一个包含独立 ips 的数组。

例如。 func-ip-range 应将 1.1.1.1-10 作为 argv 并返回一个数组 [1.1.1.1, 1.1.1.2, 1.1.1.3 ......... 1.1.1.10]。

我解决这个问题的方法如下,我无法调试“段错误”,因为我不知道代码在哪里阻塞。

如果能帮助拯救这个 child ,我们将不胜感激。

方法是将命令行参数传递给*ip_str 并逐字符读取此字符串。一旦我遇到第一个'。'我增加计数 'c',当计数 c == 3 时,我想将字符串从那里存储到一个新的字符串变量,直到我到达 '-' 并在到达 '-' 之后将字符串的其余部分存储到一个新字符串。但是我对程序编写和调试的接触有严重的问题。

除此之外如何解决问题的方向对我的学习非常有帮助。

    void array_ip(char *ip_str,char **iplist)
{
for(i=0,j=0;*(ip_str+i) != '\0';i++)
{
if(*(ip_str+i)=='.')
{c++;
}
if(c==3 && (*(ip_str+i )!= '-'))
{
*(a+j) = *(ip_str+i);
j++;
}
if(*(ip_str+i) == '-')
{
break;
}
}
for(k=0;*(ip_str+i) != '\0';k++,i++)
{
*(b+k)=*(ip_str+i);
}

printf("the starting last octet is %s \n",a);
printf("the Ending last octet is %s \n",b);
}

最佳答案

您可以改用的另一个函数是 strtok使用“-”作为分隔符。一旦你有了两个字符串,你就会知道你必须提供 ips 输出的限制。

关于c - 以 ip-range 字符串作为参数并返回包含 'C' 中的 ips 列表的数组的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14601457/

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