【发布时间】:2016-09-07 11:29:43
【问题描述】:
我在填充数组时遇到了一个严重的问题。我的函数如下所示:
int s_in[]; /* Array filled with a lot of integer values */
for(frame=0; frame<maxFrames; frame++){
left = 240*(frame-1) + 1;
right = 240*(frame +1);
int x[right-left+1]; /* is always 480 long */
for(i=left-1;i<right;i++){
x[i] = s_in[i];
}
当我现在尝试为每次运行打印存储在 x[] 中的值时,我经常得到一个空的 x[] 或一些没有出现在 s_in[] 中的随机数。 这个问题可以通过某种内存管理来解决吗?
【问题讨论】:
-
对不起,它在 C 中。
-
您能告诉我们您在
s_in中添加了什么吗? -
你在哪里打印
x。是在framefor 循环里面还是外面? -
在索引
x时,您必须始终使用介于 0 和 479 之间的值。当frame> 0 时,i将具有 >480 的值。