я стараюсь не использовать цикл while
, потому что он мне не нравиться.
Но мне нужно вызвать функцию ReceiveAndPrint
и проверить ее, не равна ли она 0
, после этого завершить цикл.
Через while
это делается так.
while (ReceiveAndPrint(ConnSocket, Buffer, sizeof(Buffer)) != 0);
Вопрос как тоже самое делать через цикл for
for(;;)
{
if(0 != ReceiveAndPrint(ConnSocket, Buffer, sizeof(Buffer)))
{
break;
}
}
Цикл
while (условие)
...
полностью эквивалентен циклу
for (; условие; )
...
поэтому в вашем случае формальная замена будет выглядеть просто как
for (; ReceiveAndPrint(ConnSocket, Buffer, sizeof(Buffer)) != 0; );
В чем смысл такой замены и зачем она вам понадобилась, правда, не ясно.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Заполнить одномерный массив размером 200 элементов случайными и неповторяющимися числами в диапазоне 1 – 200
Пишу сервер на С++, отправляю ему данные вида dhw6558d5fjf48dnbp5fps5tkze5f83n{\"gl\":\"123\"} а получаю это и еще 5 непонятных символов
Конечно, согласно стандарту - cмраздел 6