El desarrollo sin signo a firmado
Objetos de tipos enteros sin signo se pueden convertir en correspondientes tipos firmado.Sin embargo, este tipo de conversión puede producir la interpretación de datos si el valor del objeto sin signo está fuera del intervalo puede representar por el tipo con signo, como se muestra en el ejemplo siguiente:
Ejemplo
// conve__pluslang_Converting_Unsigned_to_Signed.cpp
// compile with: /EHsc
#include <iostream>
using namespace std;
int main()
{
short i;
unsigned short u = 65533;
cout << (i = u) << "\n";
}
Output
-3
En el ejemplo anterior, u es un objeto entero de unsignedCorto que se debe convertir en una cantidad firmado para evaluar la expresión (i = u).Porque su valor no se puede representar correctamente en signed short, los datos se interpreta como se muestra.