Есть несколько возможностей сделать бесконечный цикл, вот несколько вариантов:
-
for(;;) {}
-
while(1) {}
/while(true) {}
-
do {} while(1)
/do {} while(true)
Существует ли определенная форма, которую нужно выбрать? И делают ли современные компиляторы разницу между средним и последним выражением или понимают, что это бесконечный цикл и полностью пропускает проверяющую часть?
Edit: как уже упоминалось, я забыл goto
, но это было сделано из-за того, что мне не нравится это как команда вообще.
Edit2: Я сделал несколько grep для последних версий, взятых из kernel.org. Кажется, я ничего не изменил с течением времени (по крайней мере, в пределах ядра)