хочу сделать чтобы сервер посылал одну строку, затем другую.
клиент ждёт строку, обрабатывает её, затем ждёт другую.
на деле получается что клиент принимает обе строки как одну. где грабли?
>хочу сделать чтобы сервер посылал одну строку, затем другую.
>клиент ждёт строку, обрабатывает её, затем ждёт другую.
>на деле получается что клиент принимает обе строки как одну. где грабли?
>Посылай разделитель строк
>хочу сделать чтобы сервер посылал одну строку, затем другую.
>клиент ждёт строку, обрабатывает её, затем ждёт другую.
>на деле получается что клиент принимает обе строки как одну. где грабли?
>
Похоже, ты используешь TCP соединение.
В таком случае обе строки могут прийти одним пакетом.
Или четырьмя. Так что на клиенте тебе в любом случае надо из потока байтов собирать строки.
Или используй UDP. Правда, тогда придется учитывать вероятность потерь.
>>хочу сделать чтобы сервер посылал одну строку, затем другую.
>>клиент ждёт строку, обрабатывает её, затем ждёт другую.
>>на деле получается что клиент принимает обе строки как одну. где грабли?считуй побайтно до тех пор пока не столкнешься с \r \n
>хочу сделать чтобы сервер посылал одну строку, затем другую.
>клиент ждёт строку, обрабатывает её, затем ждёт другую.
>на деле получается что клиент принимает обе строки как одну. где грабли?
>Тут много насоветовали, но вообще, если так уж вперлась именно принципиально построчная передача, то ботай termios и иже с ним, там можно с дескрипторами играцца, эхо, типы приема-передачи (включая посторочную), управление буферизацией, и много еще чего. Или прямо через fcntl.
Если попроще, можно поюзать getline, или его производные из iostream, если есть надобность.