unsigned的变量为什么可以初始化为-1?
#include<iostream>
using namespace std;
int main()
{
unsigned i = -1;
cout << i << endl;
system("pause");
return 0;
}
输出为4294967295
但是
#include<iostream>
using namespace std;
int main()
{
unsigned i = -1;
++i;
cout << i << endl;
system("pause");
return 0;
}
输出为0
这是怎么回事?
unsigned的变量为什么可以初始化为-1?