gpt4 book ai didi

c - 删除前 4 个字节的数据

转载 作者:行者123 更新时间:2023-11-30 17:55:27 25 4
gpt4 key购买 nike

我正在读取一个数据包,但我需要从数据包中删除前四个字节和最后一个字节以获得我需要的内容,您将如何在 C 中执行此操作?

/* Build an input buffer of the incoming message. */
while ( (len=read(clntSocket, line, MAXBUF)) != 0)
{
msg = (char *)malloc(len + 1);
memset(msg, 0, len+1);
strncpy(msg, line, len);
}
}

传入的数据是 char 和 int 数据的混合。

最佳答案

您可以更改strncpy源的地址:

while ( (len=read(clntSocket, line, MAXBUF)) != 0)
{
msg = (char *)calloc(len -3, 1); // calloc instead of malloc + memset
strncpy(msg, line+4, len);
}
}

PS:我假设该行是 char*

关于c - 删除前 4 个字节的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14327827/

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