首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Math.h (与往常不同)

Math.h (与往常不同)
EN

Stack Overflow用户
提问于 2018-05-14 19:54:45
回答 1查看 159关注 0票数 2

几天前,我让math.h的atan函数正常工作,但出于某种原因,它不再编译了。我得到了平常的

'broken_code.c:(.text+0x49):未定义的对'atan‘的引用

我在编译时包含了-lm标志。

我试着在不同的系统(另一个Linux系统和基于BSD的系统)上编译和运行它,它运行得很好。我真的不知道编译器是如何工作/链接的,所以任何帮助都是非常感谢的。这是我的密码:

代码语言:javascript
复制
#include <math.h>
#include <stdio.h>

int main() {
    double y1, x1, y2, x2;
    y1 = 0;
    x1 = 0;
    y2 = 1;
    x2 = 0;

    y1 = atan((y1-y2)/(x1-x2));
    printf("%lf\n\n", y1);


    return 0;
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-14 20:05:05

也许你把数学图书馆联系错了顺序。例如

代码语言:javascript
复制
gcc -lm prog.c

可能不起作用了

代码语言:javascript
复制
gcc prog.c -lm

将要

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50338040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档