Compartilhar via


C6259

Aviso C6259: código rotulado é inacessível: (<expressão>& <constante>) no comutador expr não é possível avaliar <caso-rótulo>

Este aviso indica código inacessível causado por resultado de um bit a bit- E (&) comparação em uma expressão de comutador. A demonstrativo caso coincide com a constante na expressão do comutador só é acessível; todas as outras instruções casos não estarão acessíveis.

Exemplo

The following sample code generates this warning because the expression switch(rand() & 3) cannot evaluate to case label (case 4):

#include <stdlib.h>

void f()
{
     switch (rand () & 3) {
        case 3:
            /* Reachable */
            break;
        case 4:
            /* Not reachable */
            break;
        default:
            break;
    }
}

Para corrigir esse aviso, remova o código inacessível ou verifique se a constante usada na demonstrativo caso está correta.O código a seguir remove a demonstrativo caso inacessível:

#include <stdlib.h>

void f()
{
     switch (rand () & 3) {
        case 3:
            /* Reachable */
            break;
        default:
            break;
    }
}

Consulte também

Referência

The Switch instrução

The Switch C instrução