开发者

sin v/s sinf function in C

I am trying to use the sinf function in my C Program but it gives me an undefined reference error under MSVC 6.0, however sin works fine.

This make me curious to find the difference between sin and sinf.

What is the logical difference between sin and 开发者_运维知识库sinf ?

How can I implement my own sinf functionality?


sin takes a double and returns a double - sinf takes a float and returns a float.

In other words sin is double precision and sinf is single precision.

If you're using an old compiler that doesn't have sinf you can implement it as:

#define sinf(x) (float)sin((double)(x))


sin takes a double and returns a double and is defined by ANSI C. sinf isn't.


sinf() was added to C in C99, which Microsoft Visual C++ does not fully support (even so, Visual C++ 6 was released before C99 was standardized).

You can use the sin() function, which takes a double (sinf() takes a float).

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜