Partilhar via


aviso do compilador (nível 4) C4127

Mensagem de erro

expressão condicional é constante

A expressão de controle de um if demonstrativo ou while loop retorna uma constante. Se a expressão de controle de um while loop é uma constante, pois o loop será encerrado no meio, considere substituir o while Faça um loop com uma for loop. Você pode omitir a inicialização, o teste de terminação e loop incremento de um for loop, que faz com que o loop ser infinito (como while(1)) e você pode sair do loop do corpo das for demonstrativo.

O exemplo a seguir gera 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;
   }
}