gpt4 book ai didi

c - fwrite 似乎工作,memcpy 失败

转载 作者:太空宇宙 更新时间:2023-11-04 01:40:22 27 4
gpt4 key购买 nike

我不确定发生了什么。与缓冲有关的东西。 ...代码...

if (data->inbound){
//fwrite(buf, res, 1, stdout); //data->inbound);
char tmp[SOAP_BUFLEN+1];
memset(tmp,0,SOAP_BUFLEN+1);
if(len>0) {
memcpy(tmp, buf, minim(SOAP_BUFLEN,len) );
tmp[minim(SOAP_BUFLEN,len)] = '\0';
printf("%s\n",tmp);
//printf("-----------------\n");
}

当我使用 fwrite 时,我看到输出没有问题。当我使用 memcpy 时,我在输出中看到重复的条目?我需要冲洗什么吗?

在 printf 语句的末尾,我看到了 tmp 的一部分要重复。

最佳答案

您对 fwrite 和 memcpy 使用了不同的长度值。根据此处的代码(和注释掉的代码),memcpy 使用 lenSOAP_BUFLEN 中较小的一个。 fwrite 使用 res * 1。所以我敢打赌 len != res

关于c - fwrite 似乎工作,memcpy 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6415161/

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