共用方式為


警告 C26454

算術溢位:' operator ' 運算在編譯時期產生負號不帶正負號的結果

備註

這個警告表示減法作業會產生在未帶正負號內容中評估的負結果,這可能會導致非預期的溢位。

程式碼分析名稱: RESULT_OF_ARITHMETIC_OPERATION_NEGATIVE_UNSIGNED

範例

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

若要更正此警告,請使用下列程式碼:

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

另請參閱

26450
26451
26452
26453
ES.106:請勿嘗試使用不帶正負號來避免負值