for (;;) {
//Something to be done repeatedly
}
Ich habe gesehen, dass so etwas oft benutzt wird, aber ich finde es ziemlich seltsam ... Wäre es nicht viel klarer zu sagen while(true)
oder etwas in dieser Richtung?
Ich vermute, dass dies (wie es der Grund für viele Programmierer ist, auf kryptischen Code zurückzugreifen) ein winziger Rand schneller ist?
Warum und ist es das wirklich wert? Wenn ja, warum nicht einfach so definieren:
#define while(true) for(;;)
Siehe auch: Was ist schneller: während (1) oder während (2)?
TRUE
mit C zu tun? Das Standardmakro für das echte Boolen-Ergebnis in C99 ist immer noch true
. Woher kam das TRUE
?
#define while(TRUE)
Deklarieren eines Makros, das ein Argument enthält, TRUE
das nie verwendet wird, und verwandelt daher jede einzelne while-Schleife in Ihrem Programm in eine Endlosschleife?
TRUE
stammt aus Header-Dateien, die der Windows-API zugeordnet sind. Es ist in keiner Weise mit VS 6.0 verwandt. Und wie gesagt, es hat weder mit C noch mit C ++ zu tun. In C ++ ist das "wahre" Literal nur true
(auch in VS 6.0), in C89 / 90 gibt es so etwas überhaupt nicht und in C99 ist es ein Makro true
. Dies gilt für alle C / C ++ - Compiler.
TRUE
???