1直接计算
int maxint = static_cast<int>(pow(2,8*sizeof(int)-1)-1);
//pow计算结果是double型,计算最大整数时不至于溢出
2循环
int maxint=1;
int temp=maxint;
while(temp>0){
maxint = temp;
temp = temp*2+1;
}
本文介绍了两种计算整型变量最大值的方法:一是使用pow函数直接计算;二是通过循环逐步求得最大整数值。两种方法均可避免计算过程中的数据溢出问题。
1直接计算
int maxint = static_cast<int>(pow(2,8*sizeof(int)-1)-1);
//pow计算结果是double型,计算最大整数时不至于溢出
2循环
int maxint=1;
int temp=maxint;
while(temp>0){
maxint = temp;
temp = temp*2+1;
}
1681
468

被折叠的 条评论
为什么被折叠?