Advertencia del compilador (nivel 4) C4127
Actualización: noviembre 2007
Mensaje de error
la expresión condicional es constante
conditional expression is constant
La expresión de control de una instrucción if o de un bucle while se evalúa como una constante. Si la expresión de control de while es una constante porque el bucle estará en el medio, reemplace el bucle while con un bucle for. Puede omitir la inicialización, la prueba de terminación y el incremento de un bucle for, que hace que el bucle sea infinito (como while(1)), y puede salir del bucle desde el cuerpo de la instrucción for.
El ejemplo siguiente genera el error C4127:
// C4127.cpp
// compile with: /W4
#include <stdio.h>
int main() {
if (1 == 1) {} // C4127
while (1) { break; } // C4127
// OK
for ( ; ; ) {
printf("test\n");
break;
}
}