![]() |
|
Модераторы: feodorv |
![]()
|
|
| neosapient |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: нет Всего: 4 |
Простите за глупый вопрос, но ...
Делаю TCP сокеты - сервер и клиент Вот исходник Короче можно ли что бы было так
Вообще решил написать морской бой, но вот я думаю как две программы будут общаться? Поправьте мой исходник Это сообщение отредактировал(а) neosapient - 6.10.2006, 20:03 |
|||
|
||||
| ptr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: 9 Всего: 14 |
neosapient, а что смущает то?
-------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
|||
|
||||
| neosapient |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: нет Всего: 4 |
Так в моем примере, Первый случай работает нормально, а во Втором клиент в ответ от сервера получает мусор...
Можешь поправить мой пример или привести свой, чтоб был реализован этот протокол. |
|||
|
||||
| ptr |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: 9 Всего: 14 |
TestTCPServer.cpp:
Наверное всё же IPPROTO_TCP. TestTCPClient.cpp:
Не хорошо передавать и использовать указатель на локальную переменную. -------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
||||
|
|||||
| neosapient |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: нет Всего: 4 |
Спасибо, за подсказку, но все равно что то не так... Сервер Клиент Это сообщение отредактировал(а) neosapient - 7.10.2006, 18:50 |
|||
|
||||
| ptr |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: 9 Всего: 14 |
Я бы удивился, если бы всё стало нормально Я уже написал, что не так - надо память выделять динамически. На клиенте:
на сервере:
-------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
||||
|
|||||
| neosapient |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: нет Всего: 4 |
Заработало,
Только, почему раньше был баг, ведь я передаю указатель на массив - то есть память в массиве выделена, я думал сокет должен перетирать старое новым Можно пояснить... |
|||
|
||||
| ptr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: 9 Всего: 14 |
Что-то я однако погорячился
На сервере ты делаешь так:
при этом посылается весь буфер в 1024 байт с мусором. А на клиенте получается 80 байт. Это сообщение отредактировал(а) ptr - 10.10.2006, 12:25 -------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
|||
|
||||
| neosapient |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 672 Регистрация: 16.8.2006 Репутация: нет Всего: 4 |
Спасибо, кажется теперь разобрался.
А на вопрос
Ответ: можно Тему закрываю Добавлено @ 18:22 PTR, большое спасибо. И впреть расчитываю на вашу помощь. |
|||
|
||||
| ptr |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 661 Регистрация: 31.5.2006 Где: Новосибирск Репутация: 9 Всего: 14 |
Пожалуйста. Будут вопросы - спрашивай. -------------------- Единственный способ определить границы возможного - это выйти за эти границы, в невозможное. Артур Кларк. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Сети | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |