При получении входящего msessage я получаю правильный результат, когда моя структура пакета имеет массив фиксированного размера в нем, как этотRecv пакеты с членами указателей
typedef struct inPacket{
int cmd;
int seqNo;
int numbers[100];
} inPacket;
потом называют Recv как так
char buf[1024];
recv(m_socket, buf, sizeof(buf));
и бросить массив символов с типом пакета
inPacket* p = (inPacket*)buf;
Это прекрасно работает, у меня есть полный набор целых чисел в поле «числа» после кастинга. Я не могу думать, почему ниже не работает, при переходе в адресе, по которому я хочу сохранить номер
void func(int* out)
{
inPacket inpacket;
inPacket.numbers = out;
recv(m_socket, (char*)&inpacket, sizeof(inPacket));
}
массив «цифр» плохой указатель после вызова RECV.
Массив Передаваемый выделяется функцией вызова
int numbers[10];
func(numbers);
Th не может быть реальным кодом. 'inPacket.numbers = out' приведет к ошибке. – cnicutar