Share via


Advertencia del compilador (nivel 4, desactivado) C4365

"action": conversión de "type_1" a "type_2", no coinciden signed/unsigned

Por ejemplo, intentó convertir un valor sin signo en un valor con signo. Este patrón puede provocar resultados inesperados cuando el valor de origen en tiempo de ejecución no está en el intervalo del tipo de destino. Por ejemplo, un valor negativo que se convierte en un valor con signo.

La advertencia C4365 está desactivada de manera predeterminada. Para obtener más información, consulte Compiler Warnings That Are Off by Default.

Ejemplo

El ejemplo siguiente genera la advertencia C4365.

// C4365.cpp
// compile with: /W4
#pragma warning(default:4365)

int f(int) { return 0; }
void Test(size_t i) {}

int main() {
   unsigned int n = 10;
   int o = 10;
   n++;
   f(n);   // C4365
   f(o);   // OK

   Test( -19 );   // C4365
}