Ну, это используется с , в то время как ключевое слово:
do {
...
} while(foo)
В отличие от для цикла do-while цикл всегда выполняется хотя бы один раз .
Также обратите внимание, что do {}, в то время как (0) является широко используемой идиомой в ядре Linux, подробнее см. этот faq.