Поделиться через


Преобразование чисел со знаком в числа без знака

Объекты целочисленных типов со знаком можно преобразовывать в соответствующие типы без знака. При выполнении таких преобразований фактический битовый шаблон не изменяется; однако интерпретация данных изменяется. Рассмотрим этот код:

Пример

// conve__pluslang_Converting_Signed_to_Unsigned.cpp
// compile with: /EHsc
#include <iostream>

using namespace std;
int main()
{
    short  i = -3;
    unsigned short u;

    cout << (u = i) << "\n";
}

Вывод

65533

В приведенном выше примере signed short, i определяется и инициализируется с отрицательным значением. Выражение (u = i) приводит к преобразованию i в тип unsigned short до присваивания значения u.

См. также

Ссылки

Преобразования целочисленных типов