Es ist gar keine, an irgendeine Bedingung geknüpfte Schleife.
Das Ganze funktioniert so:
int main(void)
{
init();
#if defined(USBCON)
USBDevice.attach();
#endif
setup();
for (;;) {
loop();
if (serialEventRun) serialEventRun();
}
return 0;
}
Datei "hardware/arduino/cores/arduino/main.cpp"
Wie man sieht wird erst setup() einmal aufgerufen und dann "loop()" zusammen mit einem möglichen "serialEvent" in einer Endlosschleife.
Warum eigentlich die Frage?