本帖最后由 bin554385863 于 2019-6-3 00:16 编辑 #include <stdio.h>
#include <math.h>
int main(int argc, char const *argv[])
{
int i = 0;
printf("请输入数值\n");
scanf("%d", &i);
if (i >= (long long)pow(2, 32))//double 类型不足以存放这么大的数字,强制转换成long long类型,或者float才行
{
printf("数字溢出");
}
else
{
printf("范围正常\n数字上限是:%lld", (long long)pow(2,32));
}
}
------------------------------------------------------------------------------
Microsoft Windows [版本 6.1.7601]
版权所有 (c) 2009 Microsoft Corporation。保留所有权利。
E:\Administrator\Documents\My C>cmd /C "c:\Users\Administrator\.vscode\extensions\ms-vscode.cpptools-0.23.1\debugAdapters\bin\WindowsDebugLauncher.exe --stdin=Microsoft-MIEngine-In-bz35d0ub.s3m --stdout=Microsoft-MIEngine-Out-cp30lsys.2fd --stderr=Microsoft-MIEngine-Error-1g1iyetw.py4 --pid=Microsoft-MIEngine-Pid-b3yvjt4c.5j5 --dbgExe=E:\MinGW\bin\gdb.exe --interpreter=mi "
请输入数值
1000000000000
范围正常
数字上限是:4294967296
E:\Administrator\Documents\My C> |