Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
'~' : zero estendendo 'tipo1' a 'tipo2' de tamanho maior
Observações
O resultado do operador ~ (complemento bitwise) é sem sinal e depois zero-estendido quando é convertido para um tipo maior.
Example
No exemplo a seguir, ~(a - 1) é avaliado como uma expressão "unsigned long" de 32 bits e, em seguida, convertido em 64 bits através da extensão de zero. Isso pode levar a resultados de operação inesperados.
// C4319.cpp
// compile with: cl /W4 C4319.cpp
int main() {
unsigned long a = 0;
unsigned long long q = 42;
q = q & ~(a - 1); // C4319 expected
}