溢出意味着什么?从最底层看,从硬件的角度看,就是两个负数相加出了非负数,或者两个正数相加出了非正数。
所以,直接判断是否溢出即可
#include<iostream>
using namespace std;
int main()
{
long long a,b,c;
cin >> a >> b;
c = a + b;
if (( a > 0 && b > 0 && c <= 0) || ( a < 0 && b < 0 && c >= 0 ))
cout << "\"hello, %lld\\n\"" << endl;
else
cout << c << endl;
return 0;
}
全部评论
(0) 回帖