добавление неподписанного int в int [duplicate]

На этот вопрос уже есть ответ здесь:

Преобразование без знака в C - всегда ли это безопасно? 8 ответов
#include <iostream>
int main ()
{
    using namespace std;
    unsigned int i = 4;
    int a = -40;
    cout<<a+i<<endl;
    return 0;
}

Выполнение этого дает мне 4294967260

Я знаю, что происходит преобразование из подписанного int в unsigned int, но как и почему именно это значение? Я заметил, что это близко к сумме | 2147483647 | + 2147483647

Ответы на вопрос(2)

Ваш ответ на вопрос