Sdílet prostřednictvím


Převod nepodepsané podepsané

Objekty nepodepsané typů lze převést na odpovídající typy podepsané.Taková přeměna však může způsobit špatného vyhodnocení dat. Pokud je hodnota bez znaménka objektu mimo rozsah reprezentovat typem podepsané ukázáno v následujícím příkladu:

Příklad

// 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";
}

Výsledek

-3

V předchozím příkladu u je unsignedkrátké nedílnou objekt, který musí být převedena na podepsané množství vyhodnotí výraz (i = u). Protože její hodnotu nelze správně v signed short, viz je chybné interpretaci dat.

Viz také

Referenční dokumentace

Nedílnou převody