获取sin()的值时生成错误

我最近开始学习C作为辅助项目。 我在OpenSuse下使用最新的NetBeans工作,使用GCC作为编译工具集。 我做的第一个程序之一是:

#include  #include  #include  /* * */ int main(int argc, char** argv) { double rad = 1; double result = 0; result = sin(rad); return (EXIT_SUCCESS); } 

这是一个简单,明智的例子,应该没有问题。 但是,在尝试编译时,我得到一个构建错误:退出代码2(第18行中的错误,对sin的未定义引用)。 有趣的是,如果我删除sin(rad)值的赋值结果OR用硬编码值替换rad,程序编译就好了。 我在这做错了什么?

在C中,您需要链接到数学库:

将其添加到命令行选项:

 -lm 

确保您正在连接数学库。

 $ gcc myprog.c -lm