Добрый день.
Не пойму как все-таки правильно? Вот есть такой код внутри ключа:
unsigned char retVal[10*sizeof(float)];
float step;
int cnt = 0;
int pCount = 2;
for(i=0; i<pCount; i++)
{
step = .... // как-то вычисляем
_mem_move(&retVal+cnt, &step, sizeof(float));
cnt+=2;
}
_set_response(pCount*sizeof(float), (BYTE *)retVal);
По идее float - 4 байта, однако если в коде поставить cnt+=4 он реально пишет в retVal по 8 байт. Точнее он пишет по 4, но между значениями 4 байта мусора.
Я понимаю, что cnt+=2 это вроде не правильно - однако так работает....
Пожалуйста разъясните ситуацию кто в курсе.