首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

数据溢出,int64解决思路

2012-02-13 
数据溢出,int64C/C++ codeCTime ct CTime::GetCurrentTime()int n1 ct.GetTime__int64 nn n1*10

数据溢出,int64

C/C++ code
CTime ct = CTime::GetCurrentTime();    int n1 = ct.GetTime;    __int64 nn = n1*10;

为什么会溢出。。

[解决办法]
因为表达式n1×10,这两个乘数都是C++都识别为int型的啊,如果是n1×10ll(一个l还是两个l,具体的忘了,就是表示10是int64型),才会有隐式转换后才计算。直接写n1×10是先计算得出int型的结果再转换为int64型赋值给nn。
[解决办法]
探讨

引用:
我发现这句好奇怪:int n1 = ct.GetTime;
GetXXXXX,有这样的成员变量吗?一般Get什么的,不是方法吗?

复制的时候少复制了括号int n1 = ct.GetTime();

3楼和7楼都是正确的,但不是我想要的(1楼的问题)。

热点排行