Sdílet prostřednictvím


Upozornění C26454

Aritmetické přetečení: Operace "operator" vytvoří záporný nepodepsaný výsledek v době kompilace.

Poznámky

Toto upozornění označuje, že operace odčítání vytváří záporný výsledek vyhodnocený v nepodepsaném kontextu, což může vést k nezamýšleným přetečením.

Název analýzy kódu: RESULT_OF_ARITHMETIC_OPERATION_NEGATIVE_UNSIGNED

Příklad

unsigned int negativeunsigned()
{
    const unsigned int x = 1u - 2u; // C26454 reported here
    return x;
}

Pokud chcete toto upozornění opravit, použijte následující kód:

unsigned int negativeunsigned()
{
    const unsigned int x = 4294967295; // OK
    return x;
}

Viz také

26450
26451
26452
26453
ES.106: Nepokoušejte se vyhnout záporným hodnotám pomocí nepodepsaného