我是C的新手,请原谅我的无知,如果这很容易的话。我四处寻找解决方案无济于事。此外,这是一个非常大的程序的范围,所以我将尝试只包括必要的代码。
这是我的功能:
void drawImage3(int x, int y, int width, int height, const u16* image)
{
int w;
for (w=0; r<width; w++)
{
image;
DMA[3].src = image;
DMA[3].dst = &videoBuffer[OFFSET(x+width, y, 240)];
DMA[3].cnt = width | DMA_SOURCE_FIXED| DMA_ON | DMA_DESTINATION_INCREMENT;
}
}
这些在别处定义:
extern unsigned short *videoBuffer;
const unsigned short *pt;
图像是一系列短裤的名称。它有1024个元素。我知道这段代码有很多东西正在进行DMA等,但基本的SYNTATICAL问题是:
在我想要的第一次迭代中
绘制image[0]
,然后image[width]
,然后image[2*width]
,然后image[3*width]
等等......如何在每个for循环周期中更改此代码,我得到这些元素?
答案 0 :(得分:3)
在第一次迭代中,我想绘制图像[0],然后是图像[宽度],然后是图像[2 *宽度],然后是图像[3 *宽度],等等...
for (unsigned i=0; i<N; i++)
draw(image[i*width]);