Как передать массив через сокет? - C# (186257)

Узнай цену своей работы

Формулировка задачи:

Подскажите пожалуйста. Нужно реализовать игру крестики нолики, клиент-сервер. Здесь я могу передать переменную message типа string, а как мне передать двумерный массив который будет содержать информацию о матрице?
Листинг программы
  1. // Буфер для входящих данных
  2. byte[] bytes = new byte[1024];
  3. // Соединяемся с удаленным устройством
  4. // Устанавливаем удаленную точку для сокета
  5. IPHostEntry ipHost = Dns.GetHostEntry("localhost");
  6. IPAddress ipAddr = ipHost.AddressList[0];
  7. IPEndPoint ipEndPoint = new IPEndPoint(ipAddr, port);
  8. Socket sender = new Socket(ipAddr.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
  9. // Соединяем сокет с удаленной точкой
  10. sender.Connect(ipEndPoint);
  11. Console.Write("Введите сообщение: ");
  12. string message = Console.ReadLine();
  13. Console.WriteLine("Сокет соединяется с {0} ", sender.RemoteEndPoint.ToString());
  14. byte[] msg = Encoding.UTF8.GetBytes(message)
  15. // Отправляем данные через сокет
  16. int bytesSent = sender.Send(msg);
  17. // Получаем ответ от сервера
  18. int bytesRec = sender.Receive(bytes);

Решение задачи: «Как передать массив через сокет?»

textual
Листинг программы
  1. int[,] board = new int[3,3];
  2. // ..
  3. byte[] buf = new byte[board.Length * sizeof(int)];
  4. Buffer.BlockCopy(board, 0, buf, 0, buf.Length);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.083 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы