Я пытаюсь создать очередь сообщений POSIX, в которой я хочу использовать mq_send для отправки объектов сообщений и my_receive для получения этих объектов в режиме FIFO с одинаковым приоритетом.
mq_send:
int mq_send(mqd_t mqdes, const char *msg_ptr,
size_t msg_len, unsigned int msg_prio);
mq_receive:
ssize_t mq_receive(mqd_t mqdes, char *msg_ptr,
size_t msg_len, unsigned int *msg_prio);
Однако проблема очевидна, методы принимают только символ * msg_ptr или байтовый массив!
Какова лучшая стратегия для сериализации большего объекта struct var в char [] и десериализации его обратно в переменную struct form из char []? Так что я могу использовать эти два метода?