1
我目前使用这种方法来一些字节值复制过来:C++指针字节数组优化
for (int i = 0; i < (iLen + 1); i++)
{
*(pBuffer + i) = Image.pVid[i];
}
我想问一下,如果有这些值超过一气呵成复制的办法,比如说使用memcopy来获得更多速度。
整个代码为:
extern "C" __declspec(dllexport) int __stdcall GetCameraImage(BYTE pBuffer[], int Type, int uWidth, int uHeight)
{
CameraImage Image;
int ret;
Image.pVid = (unsigned int*)malloc(4 * uWidth*uHeight);
ret = stGetCameraImage(&Image, 1, uWidth, uHeight);
if (ret == ERR_SUCCESS)
{
int iLen = (4 * uWidth * uHeight);
for (int i = 0; i < (iLen + 1); i++)
{
*(pBuffer + i) = Image.pVid[i];
}
////print(“ImageType = %d, width = %d, height = %d”, Image.Type, Image.Width,
//// Image.Height);
////print(“First Pixel : B = %d, G = %d, R = %d”, Image.pVid[0], Image.pVid[1],
//// Image.pVid[2]);
////print(“Second Pixel : B = %d, G = %d, R = %d”, Image.pVid[4], Image.pVid[5],
//// Image.pVid[6]);
}
free(Image.pVid);
return ret;
}
编辑:
* PVID是这样的:
unsigned int *pVid; // pointer to image data (Format RGB32...)
你确定'我<(iLen + 1);'? – 2014-12-05 00:53:08
不太确定。应该是我<艾伦? – tmighty 2014-12-05 00:54:24
这有点不清楚:你想复制一个字节一个字节吗?换句话说,pBuffer的大小是多少:与Image中相同的项目数量或相同的字节数量? – 2014-12-05 00:55:47