서명 서명 되지 않은 변환
부호 없는 정수 계열 형식의 개체가 해당 부호 있는 형식으로 변환할 수 있습니다.그러나 다음 예제에서와 같이 서명 되지 않은 개체의 값을 부호 있는 형식으로 표현할 수 있는 범위 밖에 있는 경우 이러한 변환 데이터의 잘못 된 해석을 인해 있습니다.
예제
// 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
앞의 예제에서 u 되는 unsigned짧은 식을 계산할 수 있는 서명 된 수량을 변환 해야 정수 계열 개체 (i = u). 값 제대로 표현할 수 없기 때문에 signed short, 데이터와 같이 해석 됩니다.