Avviso del compilatore (livello 4) C4127
Aggiornamento: novembre 2007
Messaggio di errore
espressione condizionale costante
conditional expression is constant
L'espressione di controllo di un'istruzione if o di un ciclo while restituisce una costante. Se l'espressione di controllo di un ciclo while è una costante perché tale ciclo verrà interrotto, si consiglia di sostituire il ciclo while con un ciclo for. L'omissione dell'inizializzazione, del test di terminazione e dell'incremento rende un ciclo for infinito, come ad esempio while(1). È possibile interrompere il ciclo dal corpo dell'istruzione for.
Nell'esempio seguente viene generato l'errore 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;
}
}