【发布时间】:2016-06-10 06:00:46
【问题描述】:
我试图找到int 的平方。我的代码如下所示:
long long sqr=0;
int num=77778;
sqr= num*num;
结果应该是6049417284
但是当我检查输出时,它显示1754449988。
我在做什么错误?
long long 应该可以存储结果,但为什么我得到不同的值?
【问题讨论】:
-
首先
num*num给出一个整数(并溢出),然后隐式转换为long long。
标签: c++ multiplication integer-overflow long-long