gpt4 book ai didi

c - 使用strtok()将从socket接收到的数据分成一个数组

转载 作者:行者123 更新时间:2023-11-30 20:56:26 26 4
gpt4 key购买 nike

#include<...>
char *buf;
void SetConfig(char *name);
.....

int main()
{
char text[1024];
recv(sock,&text,1024,0);

printf("%s\n",text);

buf =(char*)calloc(1,1024);
SetConfig(name);
.....
}

void SetConfig(char *name)
{
int i=0;
char *Divdata;
char data[8];

Divdata= strtok(buf, "#");
while (Divdata != NULL){
data[i]=Divdata;
printf("%s\n",data[i++]);
Divdata = strtok(NULL, "#");
}

当我将数据(127.0.0.1#255.255.255.0#test#test#test#test#test#test)发送到该服务器时,我准确地获得了数据和 printf 数据,但是当程序运行到 printf("% s\n",数据[i++]);

我显示了一个段错误。

最佳答案

将值赋给 data[i] 并仅打印一个字符。

data[i]=*Divdata;
printf("%c\n",data[i++]);

关于c - 使用strtok()将从socket接收到的数据分成一个数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25323872/

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