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.
T
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).
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))