я стараюсь не использовать цикл 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; );
В чем смысл такой замены и зачем она вам понадобилась, правда, не ясно.
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости