Как разделить и объединить массив в C ++ для UDP?

У меня есть массив байтов вроде этого:

lzo_bytep out; // my byte array
size_t uncompressedImageSize = 921600;

out = (lzo_bytep) malloc((uncompressedImageSize + 
          uncompressedImageSize / 16 + 64 + 3));
wrkmem = (lzo_voidp) malloc(LZO1X_1_MEM_COMPRESS);

// Now the byte array has 802270 bytes
r = lzo1x_1_compress(imageData, uncompressedImageSize,
        out, &out_len, wrkmem);

Как я могу разделить его на более мелкие части размером менее 65 535 байт (массив байтов одно большое изображение, которое я хочу отправить по UDP с верхним пределом 65 535 байт), а затем объединить эти маленькие фрагменты обратно в непрерывный массив?

11
задан Joel Spolsky 28 December 2010 в 21:11
поделиться