[其他] 即使驴子会笑偶,还是不得不问问关于C语言的反双曲正弦函数

这个函数
arcsinh x = ln [x + (x2 + 1)1/2]

google了一下,发现可以直接写作

double y;
y=arcsinh(x);

可是我的程序总显示    error     
arcsinh:     undeclared identifier:pipi:
文件头我已经引用math.h了。

谁能指点一下,问题在哪里呢?

谢谢。





[ 本帖最后由 snowgirl 于 2007-5-21 16:55 编辑 ]
人在天涯,心系祖国!
Share |
Share

原帖由 NeuMond 于 2007-5-21 16:46 发表
try asin()



danke!
不过 asin()  是求sin() 的反函数

我要求的是双曲正弦函数的反函数, 应该是  arcsinh x 阿
人在天涯,心系祖国!

TOP

原帖由 驴子 于 2007-5-21 17:24 发表
查了下,标准库的math.h里面没有直接实现arc sinh的函数

看看你的编译器的扩展函数库里有没有


mach.h里连arcsin()都没有啊?

这是我前段时间写的程序,今天没看明白,居然忘了当时是怎么想的了。
为了求解arcsinh x = ln [x + (x×x + 1)1/2],原来程序是这样写的
time_fs=arcsin(x,y);   ???当时竟然给出了两个变量!

今天验证了一下,它的结果与下面这个表达式是一样的
m=x-y;
time_fs=ln [m + (m×m + 1)1/2]

想不明白了,我只想求变量x的函数,怎么要在函数 arcsin(x,y)中输入两个变量才能得到我要的结果呢?
人在天涯,心系祖国!

TOP

忘了说谢谢驴子和大家
人在天涯,心系祖国!

TOP

原帖由 babykatze 于 2007-5-21 18:44 发表
Since the functions are not compiled in the standard lib but in
"libm", you need to use "-lm" option when linking the code. e.g. gcc -lm filename.c -o filename


有点没看懂,再琢磨琢磨。
谢谢。
人在天涯,心系祖国!

TOP