Jos*_*hua 0 visual-studio-2010 cmath
下面的代码片段有什么问题,VS2010无法编译它?
int m = sqrt( n );
Run Code Online (Sandbox Code Playgroud)
(我试图确定整数是否为素数......)
您需要传递特定的浮点类型sqrt
- 没有整数重载.使用例如:
long double m = sqrt(static_cast<long double>(n));
Run Code Online (Sandbox Code Playgroud)
因为你cmath
不包括math.h
我假设你想要c ++.对于C,您需要使用例如:
double m = sqrt((double) n);
Run Code Online (Sandbox Code Playgroud)
您得到的错误只是意味着编译器无法自动sqrt
为您选择一个函数 - 您传递的整数需要转换为浮点类型,并且编译器不知道sqrt
它应该选择哪个浮点类型和函数.
归档时间: |
|
查看次数: |
3480 次 |
最近记录: |