gpt4 book ai didi

c - 从索引 1 开始的错误 memcpy

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

我得到了错误的memcpy日志。

我想获取*q(数组上的指针,大小为inNumberOfFrames)。

我想每次将其复制到一个新数组 buffersRing[ringNum][inNumberOfFrames]

当在 buffersRing[ringNum][0] 中时,我保存 q 的大小 - inNumberOfFrames ,并且 q 的其余部分保存到 buffersRing[ringNum][1 ]-buffersRing[ringNum][inNumberOfFrames] .

我愿意:

buffersRing[ringNum][0]=inNumberFrames;
memcpy(buffersRing[ringNum]+1, q, inNumberFrames);

我得到了错误的值。这里出了什么问题?

编辑:

但是这样做而不是复制效果很好:

 for( int k=1;k<inNumberFrames+1;k++)
buffersRing[ringNum][k]=q[k-1];

最佳答案

我相信对 memcpy() 的调用应该是:

memcpy(buffersRing[ringNum]+1, q, inNumberFrames * sizeof *q);

因为您想要复制 inNumberFrames 乘以 q 的一个元素占用的字节数。

关于c - 从索引 1 开始的错误 memcpy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14444362/

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