for (;;) {
//Something to be done repeatedly
}
He visto que este tipo de cosas se usan mucho, pero creo que es bastante extraño ... ¿No sería mucho más claro decir while(true)
, o algo por el estilo?
Supongo que (como es la razón por la cual muchos programadores recurren al código críptico), ¿esto es un pequeño margen más rápido?
¿Por qué, y realmente vale la pena? Si es así, ¿por qué no simplemente definirlo de esta manera?
#define while(true) for(;;)
Ver también: ¿Cuál es más rápido: while (1) o while (2)?
TRUE
tiene que ver con C? La macro estándar para un verdadero resultado boolen en C99 sigue siendo true
. ¿De dónde vino el TRUE
?
#define while(TRUE)
declarar una macro que toma un argumento llamado TRUE
que nunca se usa, por lo tanto, convierte cada ciclo while en su programa en un ciclo infinito?
TRUE
proviene de los archivos de encabezado asociados con la API de Windows. No está relacionado con VS 6.0 de ninguna manera. Y, como dije antes, no tiene nada que ver con C o C ++. En C ++, el literal "verdadero" es justo true
(también en VS 6.0), en C89 / 90 no existe tal cosa, y en C99 es macro true
. Esto se aplica a todos los compiladores C / C ++.
TRUE
?