Beim Funktionsaufruf fehlen tatsächlich die Klammern.

Das for(;;) ist eine Schleife ohne Bedingungen. Sprich: Sie wird ewig wiederholt, solange man sie nicht irgendwie verläßt (entweder durch ein break oder durch return, bzw. exit()). Man kann genausogut auch while (true) hinschreiben, das hat den selben Effekt.
Man kann nicht einfach for() schreiben, weil für for die Schrebweise mit den Semikolon-getrennten Befehlen vorgeschrieben ist.
for(;;) läßt sich übersetzen zu: Mache zuerst nichts. Durchlaufe eine Schleife; bei jedem Durchlauf überprüfst du nicht, ob du sie beenden sollst und du tust auch nichts besonderes.