unsigned int a;
unsigned int b;
unsigned int c = a + b;
if(c < a) cout << "integer value overflow" << endl;
如上图所示,用箭头长度表示b的大小
当b的数值在第一个箭头范围内时,不溢出,且a+b>a
当b的数值在第二个箭头范围内时,溢出,且a+b<a
由于b也是unsigned_int,最大只有unsigned_int.MAX大小,即两个箭头的总大小,故不存在第三种情况