Schleifen für Sensorabfrage

Danke, kam mir in der Code-Vorlage etwas sinnlos vor.

Wie ist allerdings der Rückgabe-Wert bei deinem Beispiel?
(Nehme an das void ist versehentlich da reingerutscht? Rückgabetyp müsste eine GeoLoc-structure sein)
Wenn jetzt die Zeit noch nicht um ist - was wird beim return-Abbruch zurückgegeben? 0? vorheriger return-Wert? zufall?

Verwendung erfolgt Kontext ist
Ortsvariable = checkgps();
Da bräuchte ich also eine sicher gültige Rückgabe. Oder muss sie über eine Zwischenvariable auf Gültigkeit prüfen, bevor die Ortsvariable darauf gesetzt wird.

Was ist da am sinnigsten?
Error-Wert für das erste Return festlegen und Rückgabe in Zwischenvariable darauf abprüfen bevor Otsvariable gesetzt wird?
Ortsvariable nur bei gültiger Rückgabe überschreiben?
Statt Rückgabe bei Erfolg globale Ortsvariable überschreiben?
Statt Rückgabe auf übergebene Ortsvariablenadresse schreiben?
Gar nichts nötig, da returnwert bei Abbruch "zufällig" dem letztem gültigen Returnwert bleibt?

Letzteres: geht das überhaupt? was liefert return ohne returnwert zurück??
Nr 3 und 4: verändert die Verwendung der Funktion, möchte ich meiden, wenn kein signifikanter Vorteil daraus entsteht.
Nr 2: Ort= if (checkgps()!= error) checkgps() else Ort.
Würde erwarten, dass hier checkgps () dann zweimal unabhängig ausgeführt wird und damit die Gültigkeitsprüfung wertlos für den zu setzenden Ortswert is? Oder denkt der Compiler hier weit genug mit?