добавление неподписанного 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