sqrt()函数问题#include#includeint main(){double d = 4.4;printf("%lf\n",sqrt(d));return 0;}为什么这段代码在Linux中用gcc编译报错,sqrt()没有定义,但在vistual C++中正确.
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/22 15:53:35
![sqrt()函数问题#include#includeint main(){double d = 4.4;printf(](/uploads/image/z/8548071-15-1.jpg?t=sqrt%EF%BC%88%EF%BC%89%E5%87%BD%E6%95%B0%E9%97%AE%E9%A2%98%23include%23includeint+main%28%29%7Bdouble+d+%3D+4.4%3Bprintf%28%22%25lf%5Cn%22%2Csqrt%28d%29%29%3Breturn+0%3B%7D%E4%B8%BA%E4%BB%80%E4%B9%88%E8%BF%99%E6%AE%B5%E4%BB%A3%E7%A0%81%E5%9C%A8Linux%E4%B8%AD%E7%94%A8gcc%E7%BC%96%E8%AF%91%E6%8A%A5%E9%94%99%2Csqrt%28%29%E6%B2%A1%E6%9C%89%E5%AE%9A%E4%B9%89%2C%E4%BD%86%E5%9C%A8vistual+C%2B%2B%E4%B8%AD%E6%AD%A3%E7%A1%AE.)
sqrt()函数问题#include#includeint main(){double d = 4.4;printf("%lf\n",sqrt(d));return 0;}为什么这段代码在Linux中用gcc编译报错,sqrt()没有定义,但在vistual C++中正确.
sqrt()函数问题
#include
#include
int main()
{
double d = 4.4;
printf("%lf\n",sqrt(d));
return 0;
}
为什么这段代码在Linux中用gcc编译报错,sqrt()没有定义,
但在vistual C++中正确.
sqrt()函数问题#include#includeint main(){double d = 4.4;printf("%lf\n",sqrt(d));return 0;}为什么这段代码在Linux中用gcc编译报错,sqrt()没有定义,但在vistual C++中正确.
关于你的问题,解决办法如下:
gcc编译的时候加上 -lm
因为你使用了math.h,就必须加-lm
linux下就这样
ps:这个方法是我找来的,但是确实可行!我以前也遇到过这个问题,按这个可行!