我正在学习 C++。使用 g++ 版本 3.2.3 编译,“g++ hworld.cpp”:
double sqrt(double);
int main(){
double x = sqrt(1515.15);
return 0;
}
编译很好,但如果我们用“sqrtfoo”替换 sqrt,编译器会说 sqrtfoo 不能用作函数。我以为我必须包括 cmath,但我想不是吗?有人可以在任何包含之前解释我的程序可以访问什么吗?相比之下,gcc 不允许我这样做,说“对‘sqrt’的 undefined reference ”。谢谢。
最佳答案
您不需要包含 cmath
,因为您的代码中已经有 sqrt
的原型(prototype),即第一行。
关于c++ - 在 C++ 中,为什么我不必包含任何内容来使用 sqrt() 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12453079/